当尝试压缩/修复线性分支时,我仍然需要进行手动合并? repo已从Subversion转换而来。每个冲突都是“自动挑选失败”或“由于空提交消息而中止提交”。后者我能理解,但--fixup-empty
或其他东西会有用。
典型输出:
user@machine:/path (master|REBASE-i)$ git add * && git rebase --continue
[detached HEAD c536940] fixup!
Author: John Doe <John.doe@example.com>
2 files changed, 57 insertions(+), 4 deletions(-)
Automatic cherry-pick failed. After resolving the conflicts,
mark the corrected paths with 'git add <paths>', and
run 'git rebase --continue'
Could not apply 8854a54... >6d5f180 foo
user@machine:/path (master|REBASE-i)$ git st
# Not currently on any branch.
# Unmerged paths:
# (use "git reset HEAD <file>..." to unstage)
# (use "git add/rm <file>..." as appropriate to mark resolution)
#
# both modified: filename.ics
#
no changes added to commit (use "git add" and/or "git commit -a")
答案 0 :(得分:2)
这是我建议您实现某种--fixup-empty
功能的想法:
git filter-branch --msg-filter "sed 's/^$/Unknown/'"
这将使用“未知”替换空提交消息,如果您想在使用git-svn
转换具有一些空提交消息的Subversion存储库之后执行rebase特别有用,但是因为它失败了“由于空提交消息而中止提交“。
答案 1 :(得分:2)
这些工作:
git mergetool
git rebase --continue