boluobenbo 发表于 2023-5-30 06:56:40

天地丶良心 发表于 2023-5-30 14:19:14

我在dev分支上继续修改A文件,然后 add 和 commit。然后我跳回master分支,发现D文件没有出现在那里。我再次跳回dev分支,D文件还在。

这是因为D文件是在master分支上新增的,dev分支并没有同步这个新增操作。所以在dev分支上进行的修改不会影响到D文件。而C文件是在master分支和dev分支上都有修改,所以在rebase时就需要进行合并操作。而A文件虽然在dev分支上有修改,但是在master分支上没有修改,所以在rebase时就直接继承了dev分支的版本。

总结来说,rebase操作可以将多个分支合并成一个线性的提交历史,但是在合并时需要进行文件修改合并。如果两个分支修改了同一个文件,就可能会发生冲突,需要手动解决。如果两个分支没有修改同一个文件,就可以自动合并,保留每个分支的修改。

boluobenbo 发表于 2023-5-30 15:27:19

页: [1]
查看完整版本: 人为的制造文件差异,为什么git rebase 不产生文件冲突提醒?