6

ブランチを空の github リポジトリにプッシュしました:

MrD@MRSD /c/Dropbox/eclipse_workspaces/javaEE/ted2012 (GitHubSquash)
$ git remote add github  https://github.com/Utumno/ted2012.git
MrD@MRSD /c/Dropbox/eclipse_workspaces/javaEE/ted2012 (GitHubSquash)
$ git push -u github GitHubSquash
Username for 'https://github.com': Utumno
Password for 'https://Utumno@github.com':
//...
To https://github.com/Utumno/ted2012.git
 * [new branch]      GitHubSquash -> GitHubSquash
Branch GitHubSquash set up to track remote branch GitHubSquash from github.

次に、綿毛を押し込んで、ブランチを削除したり、別のブランチに置き換えたりしようとしたことに気付きました。失敗しました:

MrD@MRSD /c/Dropbox/eclipse_workspaces/javaEE/ted2012 (GitHub2)
$ git push  :github && git push github GitHub2
ssh: connect to host  port 22: Bad file number
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
MrD@MRSD /c/Dropbox/eclipse_workspaces/javaEE/ted2012 (GitHub2)
$ git checkout GitHubSquash
Switched to branch 'GitHubSquash'
Your branch is ahead of 'github/GitHubSquash' by 1 commit.
  (use "git push" to publish your local commits)
MrD@MRSD /c/Dropbox/eclipse_workspaces/javaEE/ted2012 (GitHubSquash)
$ git push  :github
ssh: connect to host  port 22: Bad file number
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
MrD@MRSD /c/Dropbox/eclipse_workspaces/javaEE/ted2012 (GitHubSquash)
$ git push  -u :github
ssh: connect to host  port 22: Bad file number
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

レポを削除して、新しいブランチを新たにプッシュする必要がありました。それはうまくいきましたが、疑問に思いました:

  1. リモートブランチを別のブランチに完全に置き換えるにはどうすればよいですか?

  2. なぜ一体なぜ私は ssh: connect to host port 22: Bad file number errors - while my first push successfully (そして私が http 上にいることに気付く) を取得していたのですか?

    $ git --version
    git version 1.8.1.msysgit.1
    
4

2 に答える 2

16

あなたの構文は間違っています。正しいコマンドは次のとおりです。

git push -f github GitHubSquash

これにより、リモート GitHubSquash ブランチがローカル バージョンに置き換えられます。リモート ブランチを削除するだけの場合:

git push -f github :GitHubSquash

:githubgitがURLとして解釈しようとしていて、奇妙なことが起こるので、エラーが発生したと思います:)。

于 2013-03-30T00:44:08.487 に答える
0
git push origin :GitHubSquash

リモートブランチを削除するには

git push --set-upstream origin GitHubSquash

ローカルブランチをプッシュする

于 2015-05-22T02:56:54.493 に答える