我很好奇GIT(或Mercurial)或SVN是否可以從提交評論追加評論。例如,如果我有一個文件ABC.cpp並在ABC.cpp文件的末尾執行Commit -m「hello world」,它會將提交註釋附加到它上面?或相反亦然? EG:讓GIT或SVN在接近ABC.cpp代碼的末尾查看標記值並將其附加爲提交註釋?GIT或SVN註釋在提交或反之後添加到文件
感謝
我很好奇GIT(或Mercurial)或SVN是否可以從提交評論追加評論。例如,如果我有一個文件ABC.cpp並在ABC.cpp文件的末尾執行Commit -m「hello world」,它會將提交註釋附加到它上面?或相反亦然? EG:讓GIT或SVN在接近ABC.cpp代碼的末尾查看標記值並將其附加爲提交註釋?GIT或SVN註釋在提交或反之後添加到文件
感謝
沒有,這一點是用在CVS日內完成(或更早),但它通常被認爲今天的實踐爲差。主要問題是它使非常難,因爲每更改爲文件自動衝突與其他所有更改。
該死的...謝謝.... – Minh
「文件的每一次改變都會自動與其他所有改變衝突」 - 錯誤。 Git,AFAIK中的過濾器,只修改**表示層**,不存儲和**關鍵字內容更改**在Mercurial中**沒有被跟蹤** –
@LazyBadger:當然,如果你想添加一個額外的層免費的隱藏實際內容的VCS頂部。但是,將提交日誌嵌入到文件內容中仍然是一個壞主意。 –
不過是,你可以設法得到它在Git中/水銀,但無論如何格雷格是正確的 - 今天是不禮貌的。
只是暗示,不準備使用的解決方案
,你可以寫在文件時替換 自己的過濾器提交/結賬的情況下。這些是「乾淨」和「污跡」過濾器。在 .gitattributes文件中,您可以爲特定路徑設置一個過濾器,然後設置腳本,在文件 檢出之前處理文件(「污跡」,請參見圖7-2),並且在它們出現之前 提交(「乾淨」的,參見圖7-3)
(Pro Git, 「關鍵詞膨脹」 部分)。
在水銀的情況下,關鍵字擴展和
精心設計關鍵字,它趕上提交消息
[keywordmaps] ... Commitmess = {}內容描述
在.hgrc中,這將允許您在源中使用$ Commitmess $
我最喜歡的示例之一爲什麼這麼糟糕來自CVS網站。在CVS中,如果將「$ Log $」放入文件中,它會將提交註釋放在該行後面的行中。這就像在您的提交中輸入「cvs log」的輸出。
一些亮人作爲提交評論「在文件中添加了$ Log $行」。因此,右側的提交註釋下面是行:
Added $Log$ line in the file
在接下來的提交,的$Log
兩個實例引起要重複的提交註釋。而且,由於其中一條評論包含「$ Log」,我們現在有四個「$ Log $」實例。
每次提交完成後,我們都會將$ Log $條目中的行數加倍。刪除無關的$ Log $行並沒有幫助,因爲下一次提交將它們重新放入並重新加倍。
最後,我不得不編輯存儲庫中的,v
文件以清除整個$ Log $混亂。
在Subversion文檔中,他們對$ Log $ very clear做出了自己的感受。
你最好不要這樣做 –