git add
git add命令将内容从工作目录添加到暂存区(或称为索引区),以备下次提交。当git commit命令执行时,默认情况下它只会检查暂存区域,因此git add是用来确定下一次提交时快照的样子的。主要作用有:跟踪新文件、暂存已修改的文件、合并时把有冲突的文件标记为已解决状态。
git add使用文件或目录的路径作为参数;如果参数是目录的路径,该命令将递归地跟踪该目录下的所有文件。
git status
git status主要用来查看工作区及暂存区中不同状态的文件。这其中包含了已修改但未暂存,或已暂存但没有提交的文件。
git diff
git diff命令可以用来查看工作区与缓存区的差异,暂存区与最后提交之间的差异(git diff --staged
),或者比较两个提交记录的差异(git diff master brancchB
)。
git difftool
当你不想使用内置的git diff命令时。git difftool可以用来简单地启动一个外部工具来为你展示两颗树之间的差异。
git commit
git commit命令将所有通过git add暂存的文件内容在数据库中创建一个持久的快照,然后将当前分支上的分支指针移到其之上。
git reset
git reset命令主要用来根据你传递给动作的参数来执行撤销操作。它可以移动HEAD指针并且可选的改变index或者暂存区,如果你使用–hard参数的话你甚至可以改变工作区。如果错误地为这个命令附加后面的参数,你可能会丢失你的工作。
git rm
git rm是Git用来从工作区,或者暂存区移除文件的命令。在为下一次提交暂存一个移除操作上,它与git add有一点类似。
git mv
git mv命令是一个便利命令,用于移到一个文件并且在新文件上执行git add
命令及在老文件上执行git rm
命令。
git clean
git clean是一个用来从工作区中移除不想要的文件的的命令。可以是编译的临时文件或者是合并冲突的文件。