簡體   English   中英

git log 只顯示一個提交 ID

[英]git log show one commit id only

我需要幫助。 是否可以只顯示一個提交 ID? 由於 git log -3 顯示 1 - 3 的日志,我只想顯示 3。什么可能的命令會與之匹配?

我使用命令

       git log -3 --pretty=format:"%h"

結果是

       ffbef87
       cf0e073
       1c76c5d

我只想顯示1c76c5d

您可以使用git show 引用當前提交中的第三個父項(即HEAD的第二個祖先)。 此外, git show接受與git log相同的格式字符串:

git show HEAD~2 --pretty=format:"%h" --no-patch

更新 ( 2016-12-01 )

更好的方法是使用帶有--short選項的rev-parse 管道命令來輸出縮寫(7 個字符)提交 SHA-1:

git rev-parse --short HEAD~2

或者您也可以指定提交 SHA-1 的確切長度:

git rev-parse --short=4 HEAD~2

有一個工具:

git log -3 --pretty=format:"%h" | tail -n 1

您可以使用以下標志包含散列的n字符(而不是默認值):

--abbrev=n 

Unix 哲學的相關部分

1)讓每個程序做好一件事。 要完成一項新工作,請重新構建而不是通過添加新“功能”來使舊程序復雜化。

2) 期望每個程序的輸出成為另一個未知程序的輸入。 不要用無關信息混淆輸出。 避免嚴格的列式或二進制輸入格式。 不要堅持交互式輸入。

... [IE]

  • 編寫只做一件事並把它做好的程序。
  • 編寫程序以協同工作。

https://en.wikipedia.org/wiki/Unix_philosophy

由於至少 git 版本 2.3.8,您可以使用--skip選項:

   git log -1 --skip 2 --pretty=format:"%h"

不確定哪些早期版本的 git 支持--skip

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM