假设我一直在分支机构并且已经完成了我的工作但是想要 在分支的待办事项列表中接下来的内容的日志中添加消息。时 我可能想要这样做包括:
是否可以在不提交任何文件的情况下提交git?这样说的另一种方式:是否可以只向GIT提交一条消息?
答案 0 :(得分:29)
是。有可能的。我永远不会记得如何做到这一点,并始终需要谷歌(所以我写了一个Q / A,希望这将有助于我记住)。
命令是:
git commit --allow-empty
--allow-empty
的文档内容为:
通常记录与其唯一具有完全相同树的提交 父提交是一个错误,该命令阻止您进行 这样的提交。此选项绕过了安全性,主要用于 由外部SCM接口脚本使用。
Doc很有意义,但不容易搜索。
答案 1 :(得分:8)
您也可以考虑使用带注释的标签。然后,您可以在不必重写历史记录的情况下删除该标记。对我而言,这比在历史记录中添加空提交更有意义。
git tag -a TODO-feature-foo -m "next I'm going to..."
git push origin :TODO-feature-foo
不再需要:
git push origin :TODO-feature-foo
答案 2 :(得分:1)
注意:如果您已经暂存,但想要创建一个只有一条消息的空提交,那么您需要(使用Git 2.12,2017年第一季度):
git commit --only --allow-empty -m "my message"
commit beb635c(2016年12月9日)和commit 319d835(2016年12月2日)Andreas Krey (apk
)。
(Junio C Hamano -- gitster
--合并于commit 3aead1c,2016年12月19日)
commit:make --only --allow-empty work without path
路径存在时隐含
--only
,除非--amend,否则需要它们 但是对于--allow-empty
,它也应该被允许 - 这是在存在阶段性更改时创建空提交的唯一方法。