0

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

4

1 回答 1

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,因为它的设计并未考虑到最终用户

于 2014-10-13T15:47:22.327 回答