2015-07-19 156 views
1

我已經使用git log,但它沒有提供提交文件的名稱,只是sha codeGit:獲取提交文件的名稱?

有沒有辦法看到提交的文件的名稱?

我需要確定什麼是提交,然後將正確的文件推送到github。我不想推送文件,然後刪除其中的一些文件。

不幸的是,提交消息沒有提到localy提交的文件。

** git diff不返回結果。

編輯1

git status顯示一些被刪除的文件被COMMITED。如你所知,git還會記錄已刪除的文件。

我需要的是在上次提交中提交的文件的名稱。我不明白,隨着git status

回答

2

git log--name-only選項,這將添加文件名致力於日誌條目。

爲了得到一個「日誌」僅由SHA哈希值和文件名使用:

git log --name-only --pretty=%H 

只得到文件,相觸在最後一次提交,使用:

git log --name-only --pretty="" HEAD~1.. 

到包括狀態/動作,使用:

git log --name-status --pretty="" HEAD~1.. 
+0

感謝。它做了這項工作。 –

0

你想要的命令是:git status

0

嘗試git status給你的東西最近已經提交但尚未推開的文件名。

來源http://git-scm.com/docs/git-status

編輯1

git log --name-status HEAD^..HEAD

這將爲您提供從最後一次提交的修改過的文件的列表。

0

您可以使用git show

git show HEAD 

顯示上次提交差異,

git show HEAD~1 

鞋倒數第二承諾差異,等等。

我已經說過了,而不是顯示文件名只,git的節目可以顯示一個diff(這是我喜歡檢查commit時)

0

一旦它被提交,你需要比較你的提交與其他。

要知道什麼是你最後一次提交: git的差異--stat HEAD〜1

要知道什麼是在致力於其他老承諾: git的差異--stat shaNumber〜1個shaNumber

但是,嘗試gitk。這是一個非常易於使用的前端程序,它爲您提供了這種信息。

0

git show <commit>將向您顯示單獨提交的差異和提交消息。如果您感興趣的提交是當前的HEAD,那麼您可以僅使用git show而不帶任何參數。

git log --stat會向您顯示diffstats,文件名以及每次特定提交中添加/刪除的行數。

git log -p將爲日誌條目下方的每次提交顯示完整的差異。

git log --name-only將只顯示更改文件的名稱。

0

要查看的文件的名稱更改後提交,

$git diff --stat 

要檢查文件的名稱POST添加,提交之前,

$git diff --cached