2013-11-26 37 views
0

差異,git st得到:Git不會顯示有一個文件上修改後的文件

# On branch master 
# Changes not staged for commit: 
# (use "git add <file>..." to update what will be committed) 
# (use "git checkout -- <file>..." to discard changes in working directory) 
# 
# modified: lib/ABC/Main.pm 
# 
no changes added to commit (use "git add" and/or "git commit -a") 

git diff得到:

diff --git a/lib/ABC/Main.pm b/lib/ABC/Main.pm 
old mode 100755 new 
mode 100644 

git diff HEAD得到相同的。

添加文件後,git diff什麼也沒有顯示。

git diff HEAD得到:

diff --git a/lib/ABC/Main.pm b/lib/ABC/Main.pm 
old mode 100755 
new mode 100644 

如何顯示從git的差異只是正確的差異?

回答

2

這是因爲Main.pm的唯一更改是文件權限。文件內容沒有差異。

+0

正好,謝謝! – edem

+0

我認爲這個答案不對。更改是對git的更改。無論是內容還是權限變化。 Git跟蹤擁有它們的文件系統的權限。作者已經接受的事實讓我覺得我沒有理解這個問題(或者這個問題的表述很糟糕)。 – elmart

+1

@eleom,'diff'命令的輸出顯示權限更改。從這我知道不同之處是文件權限。 – user3021843

相關問題