2015-01-07 18 views
5

也許我正在尋找的東西不存在,但我聽說過在TFS中你可以設置一些自動格式化/檢查程序中的源代碼的方式。到目前爲止,在我所做的研究中,看起來像「檢查策略」只是在您的檢入被標記時發送警報......是否有某種方式可以在檢入時自動格式化代碼或者這只是一廂情願思維?你能否提供/鏈接到例子。是否有一個TFS檢查策略爲您自動格式化代碼?

+3

我最熟悉的自動格式化方法是使用[CodeMaid](http://www.codemaid.net/),它可以在保存時清理代碼。 – gunr2171

+3

Resharper具有使用代碼清理功能保存或格式化整個解決方案時自動格式化文件的功能。 TFS和Visual Studio都有一個內置的功能,可以在簽入時對代碼進行格式化(我不希望在很多項目中使用它)。我想成爲我自己的代碼的主人。 – jessehouwing

+0

另請參閱:http://stackoverflow.com/q/3071953/736079和https://www.jetbrains.com/resharper/features/code_formatting.html – jessehouwing

回答

0

這些都不是真正的直接回答,但他們可以幫助別人:

對於許多語言,你在Visual Studio(工具>選項>文本編輯器> {}語言>格式鍵入您可以啓用自動格式化),因此在簽入之前將代碼整理起來應該不會太困難。

您也可以使用編輯>高級>格式化文檔按需格式化文檔 - 所以您可以在檢查之前始終執行此操作(雖然你將不得不重新打開所有未決的變化)

它通常很容易保持鱈魚e tidy(尤其是以上)。如果你對「完美」的格式化過於沉迷,那麼你會發現自己浪費了大量的時間在縮進和佈局上工作,而不是做有用的工作 - 而當你回到電腦上時,你會發現自己被格式化的「破碎」所激怒幾周後,相同的代碼只能發現你認爲完美的代碼仍然存在一些小問題,或者你的個人代碼風格略有不同。當你嘗試在團隊中工作時,這種行爲甚至可能導致與他人的風格戰鬥,這可能是一個嚴重破壞性的活動。所以當「足夠好足夠好」時,學習是有價值的,不要浪費能量來達到完美。

最後,編寫坐在TFS事件上的代碼並處理所有簽入以強制執行編碼佈局風格將非常簡單。但是,如果您覺得需要/合理的努力量,那麼您可能會在文字佈局中完美無缺,並且可能更多地集中於編寫優秀的可維護代碼而不是讓它看起來漂亮。編譯器不關心,所以只要代碼對您和您的團隊成員可讀,這可能就足夠了。

+5

在不同的開發人員有不同的樣式首選項時,使用工具在簽入時對代碼進行格式設置的一個重要原因。 當Dev a。檢入時,版本庫中的代碼將與Dev b時的代碼相同。檢查 - 所以源代碼比較將只顯示真正的代碼更改,而不是格式化更改。 ON退房後,個人開發人員可以使用他們喜歡的任何格式化工具來查看他們想要的外觀。 這對於'同一行或下一行花括號'戰爭特別有用! – Maxxx

+3

我不同意。將項目作爲唯一開發人員進行格式設置並不重要,並且可能很容易保留。但是,當作爲團隊的一部分工作時,如果多個團隊成員各自擁有自己的樣式和編輯器首選項,那麼在項目中使用不一致的格式會降低開發人員的工作效率。擁有一個可以自動執行商定代碼風格的工具在作爲團隊的一部分工作時非常有用。使用這樣的工具並不是「完美」格式化「,而是使用計算機執行一些常見的約定。 – Chris

+0

關鍵是「只要代碼對您和您的團隊成員可讀」。擁有一致的格式/佈局有助於可讀性。 – Chris

0

在我的團隊中,我們實施了簽入策略,在簽入之前在所有代碼上執行AStyle.exe,您可以從sourceforge下載AStyle。是的,我們有些像項目中的所有代碼具有相同的格式和樣式,是的,它很容易處理VS中的快捷方式。在簽入之前進行造型的好處是,當您比較同一文件的版本時,根據簽入的開發人員的不同,格式並沒有改變。