git commit 命令
git commit 命令将暂存区内容添加到本地仓库中。
1. git commit 命令的语法
1)提交暂存区的所有内容到本地本地仓库
git commit -m [message]
其中[message]可以是一些备注信息。
2)提交暂存区的指定文件到本地仓库
git commit [file1] [file2] ... -m [message]
3)直接提交暂存区的内容到本地仓库
git commit -a
-a 参数设置修改文件后不需要执行 git add 命令,直接来提交
2. 设置提交代码时的用户信息
提交代码前,我们需要先设置提交的用户信息,包括用户名和邮箱:
$ git config --global user.name 'aizws' $ git config --global user.email admin@aizws.net
如果去掉 --global 参数只对当前仓库有效。
3. git commit 命令的范例
我们对 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.aizws.net'; ?>
再执行 git commit 命令:
$ git commit -a -m '修改 hello.php 文件' [master 71ee2cb] 修改 hello.php 文件 1 file changed, 1 insertion(+)
下一章:git rm 命令
git rm 命令用于删除文件。git 的本地数据管理分为三个区:工作区、暂存区、版本库。工作区的文件 git add 后到暂存区,暂存区的文件 git commit 后到版本库。git rm 命令:删除工作区文件,并且将这次删除放入暂存区。要删除的文件必须没有经过修改,也就是说和当前版本库文件的内容相同,否则将会失败。