[Git]第四回 git之add和commit

来源:互联网 发布:淘宝客 微信 编辑:程序博客网 时间:2024/06/16 19:21

本章参考了廖雪峰老师的官方网站中git的工作区和暂存区部分:
http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/0013745374151782eb658c5a5ca454eaa451661275886c6000

工作区(Working Directory)
就是在电脑里能看到的目录

版本库(Repository)
工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。
Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD。

1

我们把文件往Git版本库里添加的时候,是分两步执行的:
第一步是用git add把文件添加进去,实际上就是把文件修改添加到暂存区;
第二步是用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支。

1、git add 命令:
(1)git add :

$git add <path>

该命令表示 add to index only files created or modified and not those deleted.(包括新建的和已修改的,不包括已删除的)
文件一定要放到Git的仓库目录或者他的子目录。否则Git将无法找到文件。

(2)git add -u :
git add -u 表示 add to index only files modified or deleted and not those created.

$git add -u [<path>] 

该命令把path中所有tracked文件中被修改过或已删除文件的信息添加到索引库。它不会处理untracted的文件。
省略表示.,即当前目录。

(3)git add -a:

$git add -A [<path>]

该命令表示把path中所有tracked文件中被修改过或已删除文件和所有untracted的文件信息添加到索引库。
省略表示.,即当前目录。

(4)git add -i:

$ git add -i [<path>]

可以通过该命令查看path中被所有修改过或已删除文件但没有提交的文件.
1

(5)git add 帮助

$ git add -h

或者

$ git add -help

2

2、add commit命令 :

(1)

$ git commit  -m "提交的描述信息"

如果这里不用-m参数的话,git将调到一个文本编译器(通常是vim)来让你输入提交的描述信息。

(2)

$ git commit -a -m "提交的描述信息"

git commit 命令的-a 选项可将所有被修改或者已删除的且已经被git管理的文档提交到仓库中。如果只是修改或者删除了已被Git 管理的文档,是没必要使用git add命令的。

(3)对于已经修改提交过的注释,若需要修改,可以借助 git commit –amend 来进行。

$ git commit --amend -m ”YOUR-NEW-COMMIT-MESSAGE

会使与当前提交节点相同的父节点进行一次新的提交,旧的提交将会被取消.

1 0