不能git diff.文件存在于两个分支中但是"致命:路径'......'存在于磁盘上,但不存在于'主'中"?

Pat*_*ter 5 git

这是我在尝试比较分支和主服务器之间的文件时得到的结果:

git diff gamemodes/terrortown/entities/entities/ttt_c4/shared.lua  
         master:gamemodes/terrortown/entities/entities/ttt_c4/shared.lua

fatal: Path 'gamemodes/terrortown/entities/entities/ttt_c4/shared.lua' 
       exists on disk, but not in 'master'.
Run Code Online (Sandbox Code Playgroud)

这是master上的文件:

$ git log -n 1 -- gamemodes/terrortown/entities/entities/ttt_c4/shared.lua
commit d0241471298ce617b68dcf268be1c0af0cf8170c
Author: me
Date:   Fri Jan 1 23:25:17 2016 -0600

    December 2015 Update
Run Code Online (Sandbox Code Playgroud)

这是我的分支real_disarm上的文件:

$ git log -n 1 -- gamemodes/terrortown/entities/entities/ttt_c4/shared.lua
commit 84a7de46b92b8747cf98a57a8f7101682377980e
Author: me
Date:   Sun Jan 10 00:27:33 2016 -0600

    Remove trailing whitespace
Run Code Online (Sandbox Code Playgroud)

显然,该文件存在于两个分支中.我正在比较文件的全部原因是因为我正在尝试删除尾随空格,以便我的补丁不会给出恼人的"警告:压制5个空格错误警告:10行添加空白错误." 输出.

Von*_*onC 1

您可以在“如何比较两个不同分支的文件? ”中找到将文件与另一个分支的文件进行比较的不同方法。

\n\n

在你的情况下:

\n\n
git diff ..master -- gamemodes/terrortown/entities/entities/ttt_c4/shared.lua\n
Run Code Online (Sandbox Code Playgroud)\n\n

请参阅Mark Longair的回答“双点\xe2\x80\x9c..\xe2\x80\x9d和三点\xe2\x80\x9c\xe2\x80\xa6\xe2\之间有什么区别\ x80\x9d 在git diff提交范围内?

\n\n

..master将显示当前分支 ( ) 和的尖端之间的差异。HEADmaster

\n