2015-06-04 45 views
1

我要檢查什麼分支包含此github上commit
所以我進行以下運行git版本1.9.5.msysgit.1對我的箱子一個終端法術:的Git分支--contains錯誤「沒有這樣的承諾」,而github上顯示,提交存在

git clone [email protected]:npm/npm.git && cd npm 
git branch -a --contains 5ff786ae103161465d84ecdfdc5b0cfd8839eac8 

出人意料的是,我得到的錯誤,這樣的承諾完全不存在:

error: no such commit 5ff786ae103161465d84ecdfdc5b0cfd8839eac8 

如果github顯示這個提交會怎麼樣?

+0

你有提交本地?也許失去了拉? – ckruczek

+0

@ckruczek如果我理解'git'正確,'clone'操作檢索所有提交。如果我從github克隆了一個最新版本,但是commit失蹤了,怎麼可能呢? O_O – grigoryvp

+0

我的問題恰恰相反。我以爲你可能沒有拉最新版本。所以如果我正確地理解了你,你就克隆了這是最新的版本。比它有點we。。你可以試試'git log | grep'thecomitid''並查看輸出結果。如果日誌也不包含提交,那麼你確實沒有最新版本。 – ckruczek

回答

2

正如我們發現這是由於github以某種方式向你展示孤兒提交的事實。實際上他們進行了一些歷史重寫,並且這個提交被正式的歷史推出。但它仍然可以,如果你執行

$ git log --all -grep="Sort actions by dependency order" 

你仍然找到正確的提交。

0

有一個Linux服務器相同的問題。

固定它git fetch