什么是最初/第一次 git 提交内容的惯例?

48
我知道每次 Git 提交应该针对每个逻辑更改,但第一次提交的约定(如果有的话)是什么?
例如,我从头开始创建了一个网站,并且让 index.html 成为第一个“逻辑更改”提交,那么我的第一个“逻辑更改”提交可以是添加 <head> 元素,添加 HTML 结构或添加基本内容和 CSS。或者第一个提交应该是第一个“可工作”的版本吗?
编辑:我不是指提交消息;我是指文件内容。

9
我的惯例是使用 git commit --allow-empty,这样我就有了一个空的起点,可以创建与仓库中任何内容无关的全新分支,这非常方便。 - Kenney
1
仅因为你不邀请讨论/意见,这并不意味着你不会得到它 :) 我喜欢使用“放弃一切希望,进入此处的人”(但丁地狱入口的铭文)。如果太文学化了,“第一篇帖子!”也可以。但是说真的,这有什么关系吗?如果使用非常规信息,是否会有任何后果?好吧,除了像“最初提交,顺便说一下,生产服务器的root密码是asdf123”这样的消息之外。不要害怕承诺……写一条消息,回到你的代码中去。 - Paul
1
我不是指提交信息 - 我的意思是提交的文件内容应该是什么(我已经编辑了问题以澄清)。 - andydavies
1
@Kenney 我也是这样认为。最初的空提交还有一个好处,就是可以在不需要额外(且丑陋)开关如 --root 的情况下重新基于或过滤整个仓库。 - PerlDuck
4个回答

51

通常第一个提交被命名为“初始提交”。

作为最佳实践,它包括一个描述项目的README文件。
README通常是md文件。

只是为了好玩,阅读这篇文章:有趣的初始Git提交消息:


你也可以放置任何你想要的代码。但由于这是第一次提交,你可能还没有足够的内容,所以README是第一次提交的不错选择。 - CodeWizard

16

本文没有提到“root”或“initial commit”。我之前处理过这个问题[1],但是为了总结惯例,再次概括一下:
  • 标记你关心的提交,例如“root”,“root-commit”,编号等。
  • 使用git describe查看你所在的位置,如果没有标签,则描述会出错。
[1] https://dev59.com/WXA75IYBdhLWcg3w0cjx#12503512
- mpe

14

就像其他人报告的一样,我没有找到一个标准的惯例,所以接下来我会分享我通常做的事情。

在创建仓库之后,我会创建一个空提交,其消息为初始空提交。你必须传递选项--allow-empty。否则,你将收到一条消息,显示没有要提交的内容

$ git init # creates repository
$ git commit --allow-empty -m'Initial empty commit' # creates empty commit

我喜欢这样做,因为它让我将此提交视为我的存储库的空根。此外,我可以立即推送此存储库而无需任何内容。在此提交之后,我通常会添加README.md。


1

我不确定是否有任何特定的第一次提交惯例。我总是尝试至少有一些项目框架的相似性,很可能有一个描述预期目的的README文件。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接