[英]How to “fixup” git rerere resolution
我的工作流程通常由merge -> resolve conflicts -> commit -> debug during compilation -> fixup commit
。 这样,我就可以进行脏合并,然后再进行清除。 如果启用rerere
我将始终记录肮脏的分辨率。 如何绕开这个问题? 有没有一种方法可以通过遵循提交来解决rerere
解析问题?
这很笨拙,但是我为最后一次重大合并做了什么。
首先,我将结帐到tmp分支中的合并状态之前。 然后运行类似的合并。 然后执行以下过程:
for F in `git show $FIXCOMMIT --stat | awk '{print $1}' | tail -n +7 | head -n -1`; do
git checkout -m $F
git rerere forget $F
cp $FIXED/$F ./$F
done
FIXCOMMIT提交修复的地方。 FIXED是具有FIXCOMMIT状态的工作树。
作为一个教训,我认为不应在编译之前提交合并。
我的工作流程通常包括:
进行更改->测试->提交->进行更多更改->测试->提交->重复。
这给了我多个本地提交,它们共同构成了需要完成的工作。 当我感觉完之后,我跑步:
git rebase -i HEAD~[nr_of_commits_i_created]
而且我确保修复所有问题,除了第一个。 第一个我要么保持原状,要么最后一次改写。 现在,我完成了1次提交,其中包含我的所有更改。 我以我的master分支为基础,解决所有冲突并推动我的更改。
这样,我就不必真正处理合并。
我意识到这并不能直接回答您的问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.