add&&commit

为了演示提交代码修改,笔者在演示的项目中创建一个README文件,再把README文件加入到版本控制中去。首先创建一个README文件,并通过git status指令查看增加新文件后,代码仓库的状态变化,如下所示。

  1. GradleTest git:(master) touch README
  2. GradleTest git:(master) git status
  3. On branch master
  4. Untracked files:
  5. (use "git add <file>..." to include in what will be committed)
  6.  
  7. README
  8.  
  9. nothing added to commit but untracked files present (use "git add" to track)

在添加文件后,Git追踪到了新的文件——README,并告诉开发者使用git add<file>的方式添加版本控制。最后将add后的文件通过git commit指令提交到代码仓库,完成一次版本的记录。代码如下所示。

  1. GradleTest git:(master) git add README
  2. GradleTest git:(master) git commit -m "add README"
  3. [master ce8e133] add README
  4. 1 file changed, 0 insertions(+), 0 deletions(-)
  5. create mode 100644 README

创建了README文件之后,通过git add<file>的方式进行add操作,最后通过git commit操作进行提交,其中-m参数指定了提交的注释。

这时通过git log指令,就可以查看到刚才的提交记录。

  1. commit ce8e133421f53f99f38bf7341eb985da8c168c8f
  2. Author: 徐宜生 <xuyisheng@hujiang.com>
  3. Date: Sat Dec 12 18:15:37 2015 +0800
  4.  
  5. add README
  6.  
  7. commit 6c8ebf02a1327be98634b34d755b87a5d81885fb
  8. Author: 徐宜生 <xuyisheng@hujiang.com>
  9. Date: Sat Dec 12 18:11:25 2015 +0800
  10.  
  11. init commit
  12. (END)

另外,Git还提供了一个git shortlog的指令,输入后显示效果如下所示。

  1. 徐宜生 (6):
  2. init commit
  3. add README
  4. modify README
  5. delete readme
  6. add readme again
  7. delete readme again
  8. (END)

这条指令可以根据提交者的名字进行分组,显示每个开发者的所有提交commit记录。这适用于在文档中创建发布日志。