当前位置:   article > 正文

【git系列】git-commit含义用法选项示例详解_git commit

git commit

git系列】git-commit含义用法选项示例详解

描述

git commit命令用于记录对存储库的更改。

用法

git commit [-a | --interactive | --patch] [-s] [-v] [-u<mode>] [--amend]
	   [--dry-run] [(-c | -C | --squash) <commit> | --fixup [(amend|reword):]<commit>)]
	   [-F <file> | -m <msg>] [--reset-author] [--allow-empty]
	   [--allow-empty-message] [--no-verify] [-e] [--author=<author>]
	   [--date=<date>] [--cleanup=<mode>] [--[no-]status]
	   [-i | -o] [--pathspec-from-file=<file> [--pathspec-file-nul]]
	   [(--trailer <token>[(=|:)<value>])…] [-S[<keyid>]]
	   [--] [<pathspec>…]
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

说明

git commit命令用于创建一个包含当前暂存区内容给定的日志消息的新提交。新提交是HEAD的直接子节点,通常是当前分支的最新提交,并且该分支会更新为指向它(除非工作树没有关联的分支,此时HEAD处于"detached"状态,详情请参见git-checkout[1])。

可以通过多种方式指定要提交的内容

  • 使用git-add[1]在使用commit命令之前逐步“添加”更改到暂存区(注意:即使修改了文件也必须“添加”);
  • 使用git-rm[1]在使用commit命令之前从工作树和暂存区中删除文件;
  • 将文件列为commit命令的参数(不带–interactive或–patch选项),此时提交将忽略暂存区中的更改,而是记录已列出文件的当前内容(这些文件必须已被Git知道);
  • 使用commit命令的-a选项自动从所有已知文件(即已在暂存区中列出的所有文件)中“添加”更改,并自动从暂存区中删除已从工作树中删除的文件,然后执行实际提交;
  • 使用commit命令的–interactive或–patch选项,在最终操作之前逐个决定哪些文件或hunks应包含在提交中,除了暂存区中的内容。有关如何操作这些模式的详细信息,请参阅git-add[1]中的“交互模式”部分。

通过使用–dry-run选项,可以通过给定相同的参数(选项和路径)来获取任何上述选项包含的内容的下一次提交的摘要。

如果您提交后发现错误,可以使用git reset进行恢复。

请参阅git-commit[1]获取更多详细信息。

选项

选项描述
-a, --all自动将已修改和已删除的文件添加到暂存区,但未告知Git的新文件不受影响。
-p, --patch使用交互式补丁选择界面选择要提交的更改。详见git-add[1]。
-C , --reuse-message=使用现有的提交对象,在创建提交时重用日志消息和作者信息(包括时间戳)。
-c , --reedit-message=类似于-C,但使用-c时会调用编辑器,以便用户可以进一步编辑提交消息。
–fixup=[(amend|reword):]创建一个“修复”的新提交,当应用git rebase --autosquash时。plain --fixup=创建一个“修复!”提交,它更改了的内容,但保持其日志消息不变。–fixup=amend:类似,但创建一个"amend!"提交,它还用"amend!"提交的日志消息替换了的日志消息。–fixup=reword:创建一个"amend!"提交,它将的日志消息替换为自己的日志消息,但对的内容不做任何更改。
–squash=为与rebase --autosquash一起使用构建一个提交消息。提交消息的主题行来自指定的提交,并带有“squash!”前缀。可以与其他提交消息选项(-m/-c/-C/-F)一起使用。
–reset-author当与-C/-c/–amend选项一起使用时,或在冲突的cherry-pick之后进行提交时,声明结果提交的作者现在属于提交者。这还会更新作者时间戳。
-s, --signoff | --no-signoff在提交日志消息末尾添加一个Signed-off-by trailer。签名的含义取决于您提交的项目。例如,它可能证明提交者在项目的许可下有权提交工作,或者同意某些贡献者声明,例如开发者证书原则。请参阅项目的文档或领导以了解在该项目中如何使用签名。–no-signoff选项可用于撤销先前命令行上的–signoff选项。
–trailer [(=
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/392142
推荐阅读
相关标签