輕量級標簽可以使用(基于此答案)按相應提交的日期排序
git tag --sort=authordate
可以使用(基于此答案)按相應提交的日期對帶注釋的標簽進行排序
git tag --sort=*authordate
可以指定多個排序欄位:
git tag --sort=authordate --sort=*authordate --format='[%(*authordate:iso)][%(authordate:iso)] %(refname:short)'
但這會將所有輕量級標簽和所有帶注釋的標簽組合在一起,因為*authordate輕量級標簽authordate為空,而帶注釋的標簽為空。所以我想我需要有可能指定一個備用欄位,如果另一個欄位為空,則使用該欄位而不是另一個欄位。git有這樣的功能嗎?(我還沒有找到它git tag --help。)
如何按相應提交的作者日期對所有標簽(帶注釋的標簽和輕量級標簽的混合)進行排序?
uj5u.com熱心網友回復:
干凈地完成這項作業的最快方法可能是
git tag --format='%(objectname)^{}' \
| git cat-file --batch-check \
| awk '$2=="commit" { print $1 }' \
| git log --stdin --author-date-order --no-walk --decorate --oneline
因為標簽不必指向提交,所以你可以標記任何東西。*authordate盡管它(通常)最終決議為提交,但指向標簽的標簽也將是空白的。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/453493.html
上一篇:切換到較舊的提交而不更改任何內容
