例如,我有一个名为Purchase service的RESTful服务。我应该命名我的存储库:

purchaserestservice purchase-rest-service purchase_rest_service 还是别的什么?

惯例是什么?在GitHub中呢?公共存储库是否应该遵循某种标准?


当前回答

驼峰情况的问题是,单词通常有不同的解释——例如,checkinService和checkinService。按照Aaron的回答,如果你有许多类似名称的回购,那么自动补全是很困难的,因为你必须不断检查创建你所关心的回购的人是否使用了某种大小写的分解。避免大写。

他关于破折号的观点也是明智的。

用小写。 使用破折号。 要具体。稍后你可能会发现你必须区分相似的概念,比如用“购买-休息-服务”而不是“服务”或“休息-服务”。 是一致的。考虑一下不同GIT供应商的使用情况——您希望您的存储库如何排序/分组?

其他回答

驼峰情况的问题是,单词通常有不同的解释——例如,checkinService和checkinService。按照Aaron的回答,如果你有许多类似名称的回购,那么自动补全是很困难的,因为你必须不断检查创建你所关心的回购的人是否使用了某种大小写的分解。避免大写。

他关于破折号的观点也是明智的。

用小写。 使用破折号。 要具体。稍后你可能会发现你必须区分相似的概念,比如用“购买-休息-服务”而不是“服务”或“休息-服务”。 是一致的。考虑一下不同GIT供应商的使用情况——您希望您的存储库如何排序/分组?

也许这只是我的Java和C背景显示,但我更喜欢CamelCase (CapCase)而不是名字中的标点符号。我的工作组使用这样的名称,可能是为了匹配存储库中包含的应用程序或服务的名称。

在不偏爱任何特定的命名选择的情况下,请记住git repo可以克隆到您选择的任何根目录:

git clone https://github.com/user/repo.git myDir

回购。git将被克隆到myDir目录。

因此,即使您的公共回购命名约定最终略有错误,仍然有可能在客户端进行修复。

这就是为什么在分布式环境中,任何客户端都可以做任何他/她想做的事情,Git repo并没有真正的命名约定。 (除了保留“xxx”。Git”的裸形式的回购'xxx') REST服务可能有命名约定(类似于“REST api有命名约定指南吗?”),但这是另一个问题。

如果你计划创建一个PHP包,你很可能想把它放在Packagist上,让其他的composer也可以使用它。 Composer有as命名约定,使用vendorname/package-name-is-lowercase-with-连字符。

如果你计划创建一个JS包,你可能会使用npm。它们的命名约定之一是不允许在包名中间使用大写字母。

因此,我建议PHP和JS包使用小写和连字符,并在composer或npm中命名与GitHub上的包相同的包。

小写字母加连字符是我在GitHub上最常看到的样式

lowercase_with_下划线可能是我看到的第二流行的样式。

前者是我的首选,因为它节省了按键。

*轶事;我还没有收集任何数据。