git svn fetch
は、remotes/git-svnと呼ばれる新しいリモートブランチを追加します(git branch -a
と同様)。
上流のsvnを変更してからgit fetch
を再度実行すると、変更はマスターではなく、このブランチ上でプル(実際にはフェッチ)されます。
マスターブランチでgit log(と他のすべて)が正常に動作するようにするには、通常はフェッチ後に行う必要があるようにマージする必要があります(これはgit pullが行うもので、フェッチしてからマージ)。
のgitのsvnプルが動作しないので、手動でマージする必要があります。 masterブランチにいる間、実行します。
git merge remotes/git-svn
これは、再び、すべてがOKすること、のgit-svnのブランチをmasterブランチをマージします。
だから、将来的には、
git svn fetch
git merge remotes/git-svn
を実行して、あなたは再び上流のリポジトリで最新の状態になります。また、この作業を行いますvjangusによって示唆されていますが、これまでにリモートブランチでの変更を行うべきではありませんようにgit-svnの頭にマスターの頭の参照を設定する
。
あなたは正しいです。 'git log'はマスターリファレンスを探します。これは、 'git symbolic-ref refs/heads/master refs/remotes/git-svn'で動作した理由です。ありがとう。 – vjangus
これはgit 1.7.5.4でも動作しません。 – MDCore