每隔一段时间,我就会在 git 中遇到一些奇怪的行为。当我合并到对同一个文件进行了不相关更改的另一个分支中时,我在一个分支中对文件所做的更改将被删除。
假设我从分支大师开始。以下是所发生情况的大致轮廓:
vim foo.txt
git add foo.txt
git commit
git checkout -b test
vim foo.txt
git commit -a -m added a new line to foo.txt
git checkout master
vim foo.txt
git commit -a -m made some unrelated change
git merge test
此时,我会发现我在master分支的foo.txt中所做的更改已经被删除了。
在这一切的中间,我正在进行许多其他更改并执行其他 git 操作。由于像这样的合并是 git 的全部意义,我觉得我可能在某些时候做错了什么。
有谁知道什么?