2013-05-07 26 views
26

私は通常の長いSHA-1ハッシュ文字列を持っています。私は最短のSHA-1ハッシュ・ストリング・バージョンを取得したいと考えています。つまり、私はgit log -1 --pretty=format:%hを使用して取得しますが、長いハッシュが最後のコミットを参照していると仮定します。git正規のハッシュから短いハッシュを取得する

+0

[Get git version hash http://stackoverflow.com/questions/5694389/get-the-short-git-version-hash) –

答えて

41

最短SHA1は4改訂の解析の長さが短いオプションで、デフォルトであなたの7のSHA1を与えるあります

git rev-parse --short 921103db8259eb9de72f42db8b939895f5651489 
921103d 

あなたは短いオプションに4を指定してSHA1を最小限にする必要があります。

git rev-parse --short=4 921103db8259eb9de72f42db8b939895f5651489 
92110 
+1

しかし、それがどれほど短いかを指定すれば、曖昧さを傷つけるかもしれません、そうですか? –

+7

いいえ、最短のSHA1を見つけることはできますが、依然としてユニークなものです。私の例で分かるように、SHA1の長さは4の長さを指定しても5です。 – cexbrayat

+2

将来のコミットであいまいになることがあります。 – meawoppl

3

はそれを手に入れた:あなたが得ることができる

$ git rev-parse --short 1a6f39665adf05810f70b37ef6470bbcf61fcd38 
1a6f396