2012-05-05 21 views
-2

我正在尋找建議來在Git存儲庫中命名約定。需要建議在Git存儲庫中良好的文件命名約定

  • 資源庫已簽出,並從不同的操作系統和區域設置,這可能不是恰好有一致的字母大小寫和字符編碼的客戶機承諾,以及對一些特殊字符的行爲;

  • 倉庫裏面的文件,其文件名必須包含出於商業原因,多個完整的英文單詞,比如,一些文件名必須包含home_value,或home-value,或HomeValue而不是一些簡寫形式,其中完整的英語單詞不可識別的,如h_vh-vHV

所以我想知道應該爲團隊建立什麼樣的約定規則來減少潛在的問題。稍後改變慣例或強制使用文件命名風格可能會帶來痛苦和反作用。所以我想從早期開始儘可能詳細地制定公約。然後,我可以製作stewart腳本來自動驗證代碼庫。

一些初步thoughtlets:

  • 一些可能的格式約定,我能想到的

    foo_bar這樣的名稱#使用_作爲字分隔 富巴#使用 - 作爲字分隔 FooBar的#使用駝峯

  • 某些文件是將在Web服務器上提供的HTML文件。

  • 總是使用ASCII字符

  • 非ASCII字符應轉換爲Unicode代碼,例如U+12345

  • 總是使用低的情況下,例如foo_bar但不是Foo_BarFooBar,以避免名爲foo_barFoo_Bar的兩個文件之間發生衝突。可能的問題是,我上面提到的一些完整的英語單詞是專有名詞,需要首字母大寫。如果信息在文件名中丟失,則需要以其他方式存儲。

  • 如果小寫字母總是被使用,那麼駝峯是不是一種選擇

  • 一些完整英文單詞中可以有-,例如一些英文名字,所以它似乎foo-bar風格是不是一種選擇。唯一剩下的可能性是foo_bar

  • 如果我再允許大寫字母,以適應專有名詞,那麼在一般情況下,文件名

    foo_Bar_FooBar

但它是一個好主意嗎?

回答

1

唯一真正的技術挑戰是Unicode文件名支持得不好。它們通常不可移植,可能會導致一些奇怪的問題。另一個問題是Windows不區分大小寫,而基於Unix的操作系統則不是。這意味着您可以在Mac或Linux計算機上創建名稱分別爲HomeValuehomevalue的文件,並且在移到Windows時會導致問題。

我的建議是使用ASCII字母,並且沒有兩個名稱除了大小寫相同。至於字詞分隔,空間應該工作得很好。除非您想通過HTTP提供服務,否則沒有理由使用_-

+0

某些文件是將在Web服務器上提供的HTML文件。 – qazwsx

相關問題