冲突的Git拉取:更改文件名

4

我的同事使用Eclipse重命名了许多文件,例如:apple.java 改为 Apple.java

所以当我拉取代码时,会出现冲突
Git提示我在拉取之前必须删除这些文件,但我不想这样做
我该如何解决这个冲突?


我无法复制这个;我的测试 (1) 使用 Unix 的 mv 命令来重命名文件,(2)git add -u .,(3)git commit,(4)在另一个工作副本上,git pull 要么快进,要么创建合并,没有冲突。也许你的文件分歧太大了,如果是这样,其他答案建议的 git mv 也无济于事;还请参考 https://dev59.com/ZHE85IYBdhLWcg3wl0rF。 - coredump
请发布 git status 的确切输出。 - Matthieu Moy
2个回答

2
当您通过Eclipse更改文件名时,Git并没有得到通知。这意味着它仍然期望“apple.java”在您的硬盘驱动器上,并且将“Apple.java”视为未暂存的文件(未添加的文件)。
您应该做的是将文件移回硬盘驱动器(以任何方式),然后再次使用“git mv”命令。
在您执行此操作并提交更改之后,拉取应该不会出现问题。

1

像你的同事一样重命名文件并不是一个好方法。尝试使用 git mv apple.java Apple.java 命令,然后运行git commit -m "Rename file" ,最后运行git pull。这应该可以解决你的问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接