假设我一直在处理一个分支并且已经提交了我的工作,但是想在日志中添加一条消息,该消息是分支的待办事项列表中的下一个.我可能想要这样做的时间包括:
是否可以在不提交任何文件的情况下提交git?这样说的另一种方式:是否可以只向GIT提交一条消息?
six*_*ude 33
是.有可能的.我永远不会记得如何做到这一点,并始终需要谷歌(所以我写了一个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 年第一季度):
git commit --only --allow-empty -m "my message"
git commit --allow-empty --only带有脏索引的“ ”(无路径规范)应该是创建不更改任何路径的新提交的可接受方式,但它被禁止,可能是因为到目前为止没有人需要它。
看看提交beb635c(2016年12月9日),以及提交319d835(2016年12月2日)由安德烈亚斯Krey( )apk。 
(由Junio C gitsterHamano合并-- --在commit 3aead1c,2016 年 12 月 19 日)
commit: 让--only --allow-empty工作没有路径签字人:Andreas Krey
评论人:Jeff King
--only当路径存在时是隐含的,除非--amend.
但是使用--allow-empty,它也应该被允许:这是在存在分阶段更改的情况下创建空提交的唯一方法。
| 归档时间: | 
 | 
| 查看次数: | 5915 次 | 
| 最近记录: |