【发布时间】:2010-09-11 21:18:07
【问题描述】:
在执行git svn rebase 时解决冲突的最佳方法是什么,而您所在的 git 分支变为“(无分支)”?
【问题讨论】:
在执行git svn rebase 时解决冲突的最佳方法是什么,而您所在的 git 分支变为“(无分支)”?
【问题讨论】:
您可以使用git mergetool 以通常的方式查看和编辑冲突。一旦您确定冲突已解决,请执行 git rebase --continue 以继续变基,或者如果您不想包含该修订,请执行 git rebase --skip
【讨论】:
mergetool 进行您的更改,但不要commit 他们。只需致电 git rebase --continue 进行分阶段更改即可。
在执行git svn rebase 时,如果您有合并冲突,请记住以下几点:
1) 如果在执行变基时发生任何不好的事情,您最终将进入 (no-branch) 分支。
2) 如果您运行git status,您将在工作目录中看到一个.dotest 文件。这可以忽略不计。
3)如果要中止变基,请使用以下命令。1
git rebase --abort
4) 如果您有合并冲突:
git add [file] 暂存任何更改
git rebase --continue2git add?”,那么编辑会将冲突变成无操作更改3。继续git rebase --skip
您可能必须重复此过程,直到变基完成。您可以随时git rebase --abort 取消并放弃 rebase。
1:git svn rebase 没有--abort 选项。
2:git svn rebase 没有--continue 选项。
3:这很奇怪,但是文件处于 git 认为在那个特定补丁之后它们是相同的状态。解决方案是“跳过” rebase 上的那个补丁。
【讨论】: