如何仅向GIT提交消息?

如何仅向GIT提交消息?,git,Git,假设我一直在一个分支机构工作,并且已经投入了我的工作,但是我想 在分支的todo列表的下一步日志中添加消息。时代 我可能希望这样做,包括: 切换分支以处理其他事情-需要提醒自己下一步要做什么 周末 其他 是否可以在不提交任何文件的情况下提交到git?还有其他的说法:是否可以只向GIT提交一条消息?是的。这是可能的。我永远记不起怎么做,总是需要谷歌(所以我写了一个Q/a,希望这能帮助我记住) 命令是: git commit --allow-empty --allow empty的文档内容如下

假设我一直在一个分支机构工作,并且已经投入了我的工作,但是我想 在分支的todo列表的下一步日志中添加消息。时代 我可能希望这样做,包括:

  • 切换分支以处理其他事情-需要提醒自己下一步要做什么
  • 周末
  • 其他

是否可以在不提交任何文件的情况下提交到git?还有其他的说法:是否可以只向GIT提交一条消息?

是的。这是可能的。我永远记不起怎么做,总是需要谷歌(所以我写了一个Q/a,希望这能帮助我记住)

命令是:

git commit --allow-empty
--allow empty
的文档内容如下:

通常记录一个提交,该提交与唯一提交具有完全相同的树 父提交是一个错误,该命令阻止您进行 这样的承诺。该选项绕过安全装置,主要用于 由外部SCM接口脚本使用


Doc有道理,但不容易搜索

>你也可以考虑使用带注释的标签。您可以稍后删除标记,而无需重写历史记录。对我来说,这比在历史记录中添加空提交更有意义

git tag -a TODO-feature-foo -m "next I'm going to..."
git push origin :TODO-feature-foo
一旦不再需要:

git push origin :TODO-feature-foo
注意:如果您已进行了阶段性更改,但希望仅使用消息创建空提交,那么您需要(使用Git 2.12,2017年第1季度):

git commit--allow empty--only
”(无路径规范)和脏索引应该是创建不更改任何路径的新提交的一种可接受的方式,但它是被禁止的,可能是因为到目前为止还没有人需要它

参见(2016年12月9日)和(2016年12月2日)作者。
(于2016年12月19日被合并)

:make
--only--允许空的
在没有路径的情况下工作 签字人:Andreas Krey
审核人:杰夫·金

--当存在路径时,仅暗示为
,除非
--修改

,否则必须使用这些路径 但是对于
--allow empty
,它也应该被允许:这是在存在阶段性更改的情况下创建空提交的唯一方法


请参见
git-help-notes
@chepner,这应该是正确的答案,因为这正是
git-notes
设计的目的-它可以通过空提交和/或标记(带注释或不带注释)来完成,但这不是这些功能的目的…我使用的是允许空一点,通常,当我创建一个新分支来解释为什么创建该分支时,我无法理解为什么这不在
git commit--help
的选项列表中。我永远都记不起这个选项是什么,所以我总是需要回到这里来找到它。140个页面浏览量中大概有30%来自我。
git commit --only --allow-empty -m "my message"