【发布时间】:2020-03-02 08:01:42
【问题描述】:
我正在处理的项目是一个包含父模块和子模块的 maven 应用程序。对父模块的更改转到开发分支。每个子模块都有自己的分支,该分支从开发中重新建立以继承这些更改。
截至目前,我正在尝试设置一个变基脚本。为此,我试图找出一种方法来自动解决任何不中断的冲突。作为我测试的一部分,我通过始终默认为“他们的”更改来重新构建我从开发中创建的测试分支:
git ls-files -z *_child | xargs -0 git update-index --skip-worktree #I do not want the child module to be touched
git rebase -X theirs development
但是,变基过程仍会因冲突而中断,通常是针对几个月前已解决的极其陈旧的提交。为了解决这个问题,我使用:
git add .
git rebase --continue
这一直有效,直到我遇到另一个冲突。现在,我正在考虑使用git rerere 来记录我采取的解决措施:
git config --local rerere.enabled true
但是,我仍在试图弄清楚这实际上是如何与变基一起工作的。你有什么建议,无论是使用 git rerere 还是其他一些 git 命令来解决这个问题?理想情况下,我想完全删除git add .,并始终默认冲突为“他们的”更改。
【问题讨论】:
标签: bash git rebase git-rebase git-add