保留主题分支提交与git-svn dcommit

时间:2011-04-15 06:52:40

标签: git git-svn

我最近开始使用git-svn。我的git工作流程是这样的。
git checkout master
git svn rebase
git checkout -b topicbranch
..changes
git commit
git checkout master
git merge topicbranch
git svn rebase
git dcommit

问题在于,每当我确实提交时,在svn存储库中可以看到主题分支的唯一最终合并提交。我想看到svn提交对应于在topic分支中进行的各个git提交。

他们是否可以这样做。或者这是推荐的默认行为。

1 个答案:

答案 0 :(得分:1)

git rebase没有其他参数是错误的,所以我怀疑你没有准确描述你在做什么。而且,你错过了svn中的git svn dcommit }。)

然而,在我看来,问题是您将topicbranch合并到master而没有首先重新定位它。这意味着如果这不是一个快进合并,那么在git历史中会添加一个合并提交,并且只能通过Subversion中的单个提交来表示。在您完成主题分支后,请尝试以下方法:

# make sure you're on the right branch first:
git checkout topicbranch 
git rebase master
git checkout master
git merge topicbranch
git svn rebase
git svn dcommit