Git add
git add [参数] [--] <路径> //作用就是将我们需要提交的代码从工作区添加到暂存区,就是告诉git系统,我们要提交哪些文件,之后就可以使用git commit命令进行提交了。
为了方便下面都用 . 来标识路径, . 表示当前目录,路径可以修改,下列操作的作用范围都在版本库之内。
1.1 git add .
不加参数默认为将修改操作的文件和未跟踪新添加的文件添加到git系统的暂存区,注意不包括删除
1.2 git add -u .
-u == --update ,表示将已跟踪文件中的修改和删除的文件添加到暂存区,不包括新增加的文件,注意这些被删除的文件被加入到暂存区再被提交并推送到服务器的版本库之后这个文件就会从git系统中消失了。
1.3 git add -A .
-A == --all , 表示将所有的已跟踪的文件的修改与删除和新增的未跟踪的文件都添加到暂存区。
1.4 git add -i .
日常工作中了解前三个命令已足够能满足我们的使用需求了,但是了解一下这个交互式拣选操作也是不错的。这个命令它也是作用于版本库中已被跟踪的文件中的执行过修改与删除操作的文件。
git add -i
staged unstaged path1: +0/-0 nothing Testfile
*** Commands ***
1: status 2: update 3: revert 4: add untracked 5: patch 6: diff 7: quit 8: helpWhat now>1.4.1、revert子命令
可以通过git add -i的revert子命令(3: [r]evert)把已经添加到索引库中的文件从索引库中剔除。(3: revert)表示通过3或r或revert加回车执行该命令。执行该命令后,git会例出索引库中的文件列表.
然后通过数字来选择。输入"1"表示git会例出索引库中的文件列表中的第1个文件。
"1-15"表示git会例出索引库中的文件列表中的第1个文件到第15个文件.回车将执行。
如果我们不输入任何东西,直接回车,将结束revert子命令,返回git add -i的主命令行。
1.4.2 update子命令
可以通过update子命令(2: [u]pdate)把已经tracked的文件添加到索引库中。其操作和revert子命令类似。
1.4.3 add untracked子命令
通过add untracked子命令(4: [a]dd untracked)可以把还没被git管理的文件添加到索引库中。其操作和revert子命令类似。
1.4.4 diff子命令
可以通过diff子命令(6: [d]iff)可以比较索引库中文件和原版本的差异。其操作和revert子命令类似。
1.4.5 status子命令
status子命令(1: [s]tatus)功能上和git add -i相似
1.4.6 quit子命令
quit子命令(7: [q]uit)用于退出git add -i命令系统
1.5 git add -h
查看帮助,使用git add --help可以查看更详细的内容