git commit 命令将暂存区内容添加到本地仓库中。
git commit -m [message]
其中[message]可以是一些备注信息。
git commit [file1] [file2] ... -m [message]
git commit -a
-a 参数设置修改文件后不需要执行 git add 命令,直接来提交
提交代码前,我们需要先设置提交的用户信息,包括用户名和邮箱:
$ git config --global user.name 'cainiaoplus' $ git config --global user.email admin@cainiaoplus.com
如果去掉 --global 参数只对当前仓库有效。
我们对 hello.php 的内容进行改动,然后将暂存区的内容修改,提交到本地仓库中。
我们使用 -m 选项,在命令行中提供本次提交的注释。
$ git add hello.php $ git status -s A README A hello.php $ git commit -m '第一次版本提交' [master (root-commit) d32cf1f] 第一次版本提交 2 files changed, 4 insertions(+) create mode 100644 README create mode 100644 hello.php
现在我们已经记录了快照。如果我们再执行 git status:
$ git status # On branch master nothing to commit (working directory clean)
以上输出说明我们在最近一次提交之后,没有做任何改动,是一个 "working directory clean",翻译过来就是干净的工作目录。
如果你没有设置 -m 选项,Git 会尝试为你打开一个编辑器以填写提交信息。 如果 Git 在你对它的配置中找不到相关信息,默认会打开 vim。屏幕会像这样:
# Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # On branch master # Changes to be committed: # (use "git reset HEAD <file>..." to unstage) # # modified: hello.php # ~ ~ ".git/COMMIT_EDITMSG" 9L, 257C
如果你觉得 git add 提交缓存的流程太过繁琐,Git 也允许使用 -a 选项跳过这一步。
git commit -a
我们先修改 hello.php 文件为以下内容:
<?php echo '菜鸟教程:www.cainiaoplus.com'; ?>
再执行 git commit 命令:
$ git commit -a -m '修改 hello.php 文件' [master 71ee2cb] 修改 hello.php 文件 1 file changed, 1 insertion(+)