5

使用git-svnしていますが、最新のSVNHEADに更新したいと思います。

私がタイプgit pullすると、次のように表示されます。

fatal: No remote repository specified.  Please, specify either a URL or a
remote name from which new revisions should be fetched.

私はここで次のようなことをすべきだと読みました:

git checkout -b real-trunk remotes/trunk

しかし、私はコマンドを理解していません。なにremote-trunk?いずれにせよ、gitエラーが発生します。

fatal: git checkout: updating paths is incompatible with switching branches.
Did you intend to checkout 'remotes/trunk' which can not be resolved as commit?

これが私の.git/config

$ cat .git/config 
[core]
        repositoryformatversion = 0
        filemode = true
        bare = false
        logallrefupdates = true
[svn-remote "svn"]
        url = http://name.xyz.com/svn/trunk/project
        fetch = :refs/remotes/git-svn

また、gitチェックアウトで行ったすべての変更を元に戻す方法を教えてもらえますか?新しいSVNHEADバージョンに戻りたいです。

4

1 に答える 1

5

「gitpull」の代わりに更新する場合:

git svn rebase

refs / remotes/git-svnに対応するrefs/heads / masterがすでにあると思いますので、それを使って作業してください。「実際のトランク」は必要ありません。

「gitcheckout」は変更を実行せず、現在のブランチを変更するだけです。現在のブランチを元に戻すことができますが、「gitcheckoutyour_previous_commit_or_branch」を使用します。

「gitcheckout-bbranchname」は、新しいブランチを作成します。ブランチを削除するには、「gitbranch-Dbranchname」を使用します。

于 2012-05-24T18:11:58.687 に答える