git commit 命令
墨初 互联知识 56874阅读
在Git中想要将Git暂存区中更改提交到仓库区,并将索引的当前内容与描述更改的用户名和日志消息一起保存,可以使用 git commit 命令。下面对这个命令做一个详细的解释。
git commit
git commit:用于将暂存区中的变化提交到仓库。
语法:
git commit [-a | --interactive | --patch] [-s] [-v] [-u<mode>] [--amend] [--dry-run] [(-c | -C | --fixup | --squash) <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] [-S[<keyid>]] [--] [<file>…]
git commit 示例:
1、提交所有修改
语法:
git commit -m "message" # message 为一些备注信息
例:
git commit -m "第一次修改"
2、提交指定的文件到仓库
语法:
git commit [file1] [file1] ... -m "message"
例:
git commit hello.txt hello.html -m "补充更新"
3、直接将工作区提交到仓库
ps:此操作不需要执行 git add 命令提交缓存。
语法:
git commit -a
例:
git commit -am
4、—allow-empty参数
--allow-empty参数用于没有提交信息的 commit。
例:
$ git commit --allow-empty
5、—amend
--amend参数用于撤销上一次 commit,然后生成一个新的 commit。
例:
git commit --amend - m "new commit message"
6、—fixup
--fixup参数的含义是,当前添加的 commit 是以前某一个 commit 的修正。以后执行互动式的git rebase的时候,这两个 commit 将会合并成一个。
git commit --fixup <commit>
ps:执行上面的命令,提交说明将自动生成,即在目标 commit 的提交说明的最前面,添加“fixup! ”这个词。
7、—squash
--squash参数的作用与--fixup类似,表示当前添加的 commit 应该与以前某一个 commit 合并成一个,以后执行互动式的git rebase的时候,这两个 commit 将会合并成一个。
git commit --squash <commit>
Tips:
1、在提交代码之前需要先设置提交的用户信息,包括用户名与邮箱
git config user.name <用户名> git config user.email <邮箱>
2、在命令中如果不使用“-m”参数,则会打开编辑器让输入备注信息
3、个人建议直接从Git暂存区将变动提交到仓库