看来我对git缺乏一些了解。
我目前正在进行广泛的
git rebase -i --root
Run Code Online (Sandbox Code Playgroud)
在 origin/main(master) 上,这不是一个分支。
我的待办事项文件仅包含
因为必须更改许多提交消息才能通过提交 linting。
为什么我必须手动解决此类合并冲突?
CONFLICT (content): Merge conflict in file1
CONFLICT (content): Merge conflict in file2
Run Code Online (Sandbox Code Playgroud)
我希望更改提交消息应该可以独立于代码库中的更改。
原因之一可能是过去的强制更新吗?
因为您没有使用--rebase-merges,所以您错过了与更改的合并(例如冲突解决)...这导致了 rebase 中的当前冲突。如果您只对提交进行重写(并且不会更改任何文件),您应该尝试:
git rebase --rebase-merges -i --root
Run Code Online (Sandbox Code Playgroud)
然后,每次遇到冲突时(例如在最初遇到冲突的某些合并提交中),您可以执行此操作以重用原始冲突解决方案,而无需执行任何其他工作:
git restore --staged --worktree --source=REBASE_HEAD -- .
git rebase --continue
Run Code Online (Sandbox Code Playgroud)
直到rebase完成。并且,如果不明显,则在执行变基时不得在文件中引入任何新更改,因为使用此功能会在以后提交时删除存在冲突的这些更改。
| 归档时间: |
|
| 查看次数: |
65 次 |
| 最近记录: |