大家在公司用到的VCS,一般都是和Issue tracker / Bug tracker 關聯到一起的。
比方說,我在VCS里面填上update log:
Fixed error about animiation matrix updating. Bug 223789 updated. Review 1776. |
然后將這個change提交,此時Bug tracker上便會更新,變成這樣:
一般這里的Bug號,review號和Issue號都會有相應的鏈接,連接到對應的內容上以方便查閱。
那么在Google code里如何實現這一點呢?
首先,如果你在log中涉及了某個issue,并以issue nnn或者是issue #nnn 填上對應的Issue號,那么在SVN的瀏覽中,自然會產生某個鏈接,如SALVIA里面的:
Log messageSASL:
Add syntax_tree_builder into syntax_tree project.
Add parse_api into parser.
Add parse_api into syntax tree.
Issue 49 updated. |
此時,Google的Change viewer還會提供相應的超鏈接。但是當你點到Issue49之后,會發現Issue49并沒有更新當前revision的信息。這是怎么回事呢?
答案是,如果想經由Log去更新Issue tracker,必須要按照一定的格式。
完整的文章,可以參見google的幫助。
這里給大家提供一個快速教程:
首先,整個命令的格式大致如下:
$COMMAND$ issue $ISSUE ID$ $FIELD$: $FIELD$ $CONTENT$ $DESCRIPTION$ |
COMMAND一共有三種,New,Update,Fixes。含義就不說了,大家都懂。
Field,就是類似于Summary,Owner一類,在Issue Editor的界面上大家都能看到。
Description呢,一方面用于你這次更新的詳細說明,另一方面也會提交到Issue Tracker中。
注意,在Update的時候,Field也好,Description也好,至少要填一項,否則Issue tracker是不會給你更新信息的。
下面咱們來舉個例子:
Log messageSALVIA:
Update issue 53 (注意,這里沒有句號)
Issue 53 will be added an new comments. |
這個時候,Issue track就會更新為:
Comment 1 by project member wuye9036, Today (43 minutes ago) This issue was updated by revision r462.
Issue 53 will be added an new comments.
|
你看,自動更新了吧。但是注意哦。Update那條命令之前的內容,并沒有被更新到Issue tracker中。
哈哈,Have fun!