2013-05-29 39 views
1

目前,查看tfs簽入ID的唯一方法是使用git log命令。和其他任何git用戶一樣,我有我的美化git日誌,所以我想將tfs checkin id標誌包含到我的git日誌中。如何在我的git日誌中獲取TFS簽入ID?

如果有一個標誌我可以用於我的美化日誌來了解提交是本地git提交還是tfs簽入提交,那也是一個加號。

這裏是我的git的別名回到過去的十年提交:

[alias] 
ten = log --pretty=format:\"%C(yellow)%h%Creset %ad %C(green)%s %Creset[%an]\" --graph --date=short --no-merges -10 

我想實現這樣的事情:

[alias] 
ten = log --pretty=format:\"%C(yellow)%h%Creset %ad %CONDITIONAL(IF %TFSCHECKINID NOT NULL){%C(red)[%TFSCHECKINID]} %C(green)%s %Creset[%an]\" --graph --date=short --no-merges -10 

應該出現這樣的:

* xxxxxx yyyy-mm-dd [C9999] This is a TFS checkin [Anonymous] 
* xxxxxx yyyy-mm-dd This is a local git commit [Anonymous] 

回答

1

要嘗試的一件事是添加--decorate%d格式的位置呃包含指向提交的參考。這並不標記所有的提交,但它會把tfs/default放在TFS頭上,這應該很明顯你最近的哪些提交不是來自TFS。您也可以嘗試%gd%gD

您也可以打開項目的config中的自動標記,並使用%d

+0

這似乎是一個好的開始。但是如果我要在中間的某個地方簽出並創建一個分支,那麼在第一次提交時只會說'(HEAD,test_branch)'。只有一次從主設備重新綁定後,它纔會顯示'(HEAD,test_branch)'在第一次提交,並在第二個'(tfs/default,master)'.. – CincauHangus

+0

Autotagging解決了我上面的問題。謝謝! – CincauHangus