使用递增的追加文本重新提交提交

时间:2018-10-12 13:20:00

标签: git

假设我正在使用本地存储库,并且经常在编辑单个文件-brandNewFile.txt时提交。因此,在开始之前,在原始提交中,我们只有一行文本:"It's a nice day"
现在,我们在文件末尾添加一行,仅包含"generic1"文本,并创建一个新的提交(A)。
"generic2"行再次重复一次,导致提交B。 我们最终获得了2个新提交(A和B)。

现在,在推送到每个人都可以访问的远程存储库之前,我决定要清理一点历史记录,只保留我认为与我正在执行的操作相关的有意义的提交。

因此,我将从原始提交开始进行变基,但是在应用(选择)B的同时删除A。重新变基一开始,就在B的应用之后出现以下输出:

Unmerged paths:
(use "git reset HEAD <file>..." to unstage)
(use "git add <file>..." to mark resolution)

both modified:   brandNewFile.txt

no changes added to commit (use "git add" and/or "git commit -a")

当我只想提交一个将一行文本附加到已存在的提交“之上”的提交时,为什么会报告冲突?
对我来说,这不是尝试进行合并操作,尽管结果肯定表明这是正在发生的事情。

1 个答案:

答案 0 :(得分:0)

这是因为您的初始提交只有一行:

It's a nice day

提交B有三行

It's a nice day
generic1
generic2

现在,当rebase将提交B合并到初始提交中时,就会发生冲突。 Rebase需要从初始提交中删除第2行(generic1),但是初始提交只有1行。