如果我在之前的文件中对一个文件进行更改,会发生什么?

时间:2014-10-13 15:22:57

标签: git git-merge-conflict

我很好奇,如果我运行git update-index --assume-unchanged,并且有人以产生冲突的方式查找该文件,如果我提取这些更改,会发生什么?我有一个简单的冲突吗?它是否会覆盖我的更改,因为它假定文件未更改?

1 个答案:

答案 0 :(得分:1)

这很容易测试。使用我的Linux机器上的Git 1.9.1,Git会检测到这些更改会丢失并阻止这种情况发生:

$ git pull
remote: Counting objects: 5, done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (3/3), done.
From file:///XXXXXXX
   493134f..d04cb06  master     -> origin/master
Updating 493134f..d04cb06
error: Your local changes to the following files would be overwritten by merge:
        foo.bar
Please, commit your changes or stash them before you can merge.
Aborting

作为旁注,我建议尽可能避免使用git update-index,因为它was not designed with end users in mind