2010-07-09 80 views
5

我想要一個簡單地輸出任意對象的SHA(commit,tree,blob等)的git命令。基本上:獲取任意git對象的SHA的最簡單方法?

$ git sha HEAD 
7b78f727c91edc7726f3c31113bc7b1509fea163 
$ git sha master^:CHANGELOG 
0dcc5f003ed89c30a8d0376a29d546c20449fd90 

...等等。這應該是世界上最簡單的事情,但我找不到一個好的方法來做到這一點。我不介意使用別名來執行復雜的,可選的git命令,但似乎我必須錯過一個非常簡單的取消引用命令,git必須始終在引擎蓋下使用。

回答

6

出於您的目的,您的git sha實際上是git rev-parse

% git rev-parse HEAD 
47753f420d6ec7d84f8705e9acb67693745b4a8b 
% git rev-parse origin/pu^:Documentation/RelNotes-1.7.1.txt 
9d89fedb36b4d6fa7c8a6a8487cc47b4ca542e3a 
+0

啊,很好......我看到了這個命令,但沒有在「解析參數」和解引用對象引用之間建立連接。但是當然後者是前者的關鍵部分。謝謝! – 2010-07-09 16:43:13

相關問題