git-svn试图提交错误的分支

时间:2012-01-30 23:16:27

标签: git git-svn

git-svn dcommit正试图推向错误的SVN分支。这是我做的:

git checkout -b branch_a svn/branch_a  # git-svn clone prepended all remote SVN branches with svn/
git svn branch -m "a message" branch_b
git checkout -b branch_b svn/branch_b

<make some commits>

git svn dcommit
git checkout branch_a
git svn rebase
git checkout branch_b
git rebase branch_a

这是我从this StackOverflow问题解释的“正确”分支/合并策略。

现在我在泡菜中。来自git svn dcommit的{​​{1}}会尝试推送到branch_b的SVN网址。 svn/branch_a的输出证实了这一点。这也不是我想要或期望的。

有趣的是,git svn info显示了正确的SVN分支,即git log --grep='^git-svn-id:' --first-parent -1的网址。我已经读过这个命令是假设来揭示git-svn将在哪里提交。

所以:

  1. 我做错了什么?
  2. 如何解决问题(即将svn/branch_b推送到branch_b

1 个答案:

答案 0 :(得分:1)

查看您的结帐命令,似乎您可能没有指示git svn正确跟踪远程SVN分支。请尝试以下命令:

git checkout -b branch_a -t svn/branch_a
git checkout -b branch_b -t svn/branch_b

然后在每个分支后验证您正在跟踪的分支:

git svn info

然后每个分支都应该跟踪正确的远程分支。