2017-08-25 78 views

回答

0

由於Git會不知道哪些是提交重要你,你必須首先定義你自己的一套準則/格式怎麼寫你提交的信息,然後你就可以在後面使用輕鬆區分特定開發階段所做的所有提交。

例如:

  • 如果它是一個錯誤修復,在前面加上該提交消息是「[修正錯誤]
  • 如果它是一個新的功能,在前面加上該提交消息是「[專題]
  • 如果它是一個項目設置的變化,前面加上犯了一個消息,」 [移動]

然後,一旦所有分支已合併到主分支(假設它是開發),結帳開發分支並使用git log --grep=<PATTERN>來標識特定的一組提交。

例如,如果你只需要bug修復承諾,做一個:

git log --grep="bugfix"

它會告訴你所有以「修正錯誤」提交信息的提交。

如果你只需要一個特定時間段提交,你可以使用--since=<date>選項:

git log --since="2017-06-01" --grep="bugfix"

如果你想有一個格式化列表(東西,你可以輕鬆地輸出到一些排序的發行說明,我假設),你可以使用--format=<format>選項:

git log --since="2017-06-01" --grep="bugfix" --format="(%ci) %h : %s"

上面的命令會給你這樣的事情:

(2017-06-18 18:26:36 +0800) 63f330f : [bugfix] prevent crash when dialog is sent to background 
(2017-07-01 10:03:40 +0800) cdcbd91 : [bugfix] remove extra row at the end of the list 

您可以從完整git log docs檢查出other format options

基本上,它將全部取決於您的提交消息格式。
作爲提示,您可以使用commit.template進行調查,以便更容易地設置提交消息的格式。當您提交

commit.template

如果將其設置爲一個文件系統上的路徑, Git會使用該文件作爲默認的消息。對於 例如,假設你在~/.gitmessage.txt創建一個模板文件 看起來像這樣:

subject line

what happened

[ticket: X]

相關問題