?
? ????? PHP ??? ???? ??? ?? ??
git-name-rev - 查找給定轉(zhuǎn)速的符號(hào)名稱(chēng)
git name-rev [--tags] [--refs=<pattern>] ( --all | --stdin | <commit-ish>… )
查找適用于人類(lèi)消化的符號(hào)名稱(chēng),以可解析的任何格式給出修訂git rev-parse
。
--tags
不要使用分支名稱(chēng),而只使用標(biāo)簽來(lái)命名提交
--refs=<pattern>
只能使用名稱(chēng)與給定 shell 模式匹配的引用。該模式可以是分支名稱(chēng),標(biāo)簽名稱(chēng)或完全限定參考名稱(chēng)之一。如果給定多次,請(qǐng)使用名稱(chēng)與任何給定
shell 模式匹配的 ref。使用--no-refs
明確給出任何以前的參考模式。
--exclude=<pattern>
不要使用任何名字與給定 shell 模式匹配的 ref。該模式可以是分支名稱(chēng),標(biāo)簽名稱(chēng)或完全限定參考名稱(chēng)之一。如果給定多次,當(dāng)匹配任何給定模式時(shí),
ref 將被排除。當(dāng)和--refs 一起使用時(shí),只有在匹配至少一個(gè)--refs 模式并且不匹配任何--exclude 模式時(shí),ref 才會(huì)用作匹配。使用--no-exclude
明確排除模式的列表。
--all
列出所有提交可達(dá)的所有提交
--stdin
通過(guò)用“$ hex($ rev_name)”替換所有40個(gè)字符的 SHA-1格式(例如$ hex)來(lái)轉(zhuǎn)換 stdin。與--name-only 一起使用時(shí),替換為“$ rev_name”,完全省略$ hex。旨在供劇本使用。
--name-only
而不是打印 SHA-1和名稱(chēng),只打印名稱(chēng)。如果使用--tags 給定,“tags /”的常用標(biāo)記前綴也將從名稱(chēng)中省略,從而使輸出git-describe
更加緊密。
--no-undefined
如果參考值未定義,則代碼為錯(cuò)誤代碼!= 0,而不是打印undefined
。
--always
顯示唯一縮寫(xiě)的提交對(duì)象作為后備。
給定一個(gè)提交,找出它相對(duì)于本地裁判的位置。說(shuō)有人寫(xiě)了你關(guān)于那個(gè)奇妙的提交 33db5f4d9027a10e477ccf054b2c1ab94f74c85a。當(dāng)然,你看看提交,但只是告訴你發(fā)生了什么,但不是上下文。
輸入git name-rev
:
% git name-rev 33db5f4d9027a10e477ccf054b2c1ab94f74c85a 33db5f4d9027a10e477ccf054b2c1ab94f74c85a tags/v0.99~940
現(xiàn)在你明智了,因?yàn)槟阒浪?v0.99之前發(fā)生了940次修訂。
你可以做的另一件好事是:
% git log | git name-rev --stdin