2011-07-12 127 views
1

我有很多git倉庫(有提交),並且在運行git log時沒有顯示任何內容。如果我運行一個項目目錄以外的命令(不帶一個Git倉庫),我得到:Git Log Displays Nothing

致命的:不是git倉庫(或任何父目錄):git的

我試圖重新 - 安裝Git(我現在正在運行1.7.5.4)並重新克隆我的倉庫無濟於事。有任何想法嗎?

+1

'git rev-list --all --pretty'返回什麼? –

+0

@Abe它返回的東西(作者,日期,消息等)。 –

回答

-1

格式化並更新爲Lion(固定)。

0

預計在項目目錄外運行git命令的致命錯誤。根本沒有得到任何運行日誌消息git log不是。

嘗試運行gitk以查看是否可以在那裏看到日誌歷史記錄。

+0

gitk也不會顯示任何內容。如果你想使用gitk,可以像使用git log一樣使用--all參數來調用它。 –

+2

可能不值得downvote,因爲它是一種故障排除技術,但whatevs –

+0

試圖撤消,但超時。有人可以贊成嗎? –

0

如果您沒有任何提交,它不會顯示任何內容和錯誤。另外,如果你沒有在裸倉庫中進行當前提交,你仍然可以使用`git log --all'來顯示所有提交的提交。

你也可以看到你有什麼分支與

git branch -a 

那麼你可以git checkout branchX。你將能夠從git log得到輸出 - 然後 - 如果你有一些提交那裏。如果您有裸回購,則無法結帳。

希望這會有所幫助。

+1

他說他有很多回購,他們都沒有任何承諾?沒有機會。如果你沒有當前的提交,你是什麼意思?如果你正在談論脫離頭部,它仍然顯示日誌,因爲提交仍然指向他們的父母。 – manojlds

+0

措辭嚴厲。定影。 –

+0

我有很多提交併嘗試過多個分支。 –

0

我有同樣的問題(與「git的差異」不工作,要麼),我仍然不知道爲什麼,但我解決方法:

git rev-list --all --reverse 

或以上(僅10消息信息最後提交) :

git rev-list --all --max-count=10 --reverse --pretty 
+0

這提供了提交列表,而不是特定文件的提交。 – loopkin

2

我剛剛經歷過同樣的問題,git日誌不顯示任何特定文件。問題原來是Windows以大寫的首字母顯示目錄名,但git預計第一個字母是小寫。所以「git log Subdir/file.c」沒有產生錯誤,也沒有輸出。而「git log subdir/file.c」產生了預期的修訂歷史記錄。

+0

我現在觀察的情況略有相同:在Windows下,某些特定文件的'git log'會給出一個空的輸出,但對同一個文件的'git diff'可以正常工作。同一目錄中的其他文件似乎不受影響。 我嘗試了不同的命令行選項來混帳,但輸出仍然是空的。 – dmi

+0

我解決了我的問題。當我試圖對我的文件說'git blame'並且抱怨時出現了這個問題。然後我用'git branch --all'檢查了我的HEAD指向分支'main',但我在分支'master'中,'master'與'main'不同。沒有什麼線索發生了什麼,但我刪除了分支'main'並將'master'移到'main'。在那之後,所有事情都爲我工作:) – dmi