git diff

git diff 不带参数直接比较工作目录和索引之间的差异。

git checkout

git branch -avv 显示所有的本地分支和远程分支
git checkout test 切换到 test 分支,test 分支必须是本地存在的分支,否则会报错
git checkout -b test 基于当前所在的分支,检出一个新的命名为 test 的分支
git branch -D test 删除本地的 test 分支,-D 为强制删除,如果当前分支的变更没有完全合并到 master 分支时使用 -d 无法删除,必须使用 -D 来强制删除
git branch -r -d origin/test 删除本地远程追踪分支,并不会删除远程仓库里面的分支,推荐使用下面的命令删除本地远程追踪分支

git clone

git clone 克隆远程版本库

git add

git add . 将所有的变更添加到索引,等同于 git add -A 或者 git add --all(注意有个点)
git add --filename 添加某个指定文件

git commit

git commit -m "message" 将索引中的变更提交到本地仓库
git commit -a -m "message" 将 git add . 与 git commit -m "message" 这两个命令合成一个命令提交
git commit --amend 修改最后一次提交的 message(只能修改最后一次的提交)

git merge

git merge test 将当前分支与test分支合并

git status

查看当前工作目录下的变更内容
git status -s 查看变更文件和变更状态,那些标识为UU的文件就是需要解决的冲突文件
git status -vv 查看变更的详细内容
git ls-files -u 查看那些合并产生冲突的文件

git pull

拉取远程分支的更新,并且将远程分支的更新合并到本地分支

git push

git push 本地提交记录(commit)推送到指定远程分支
git push origin :test 删除远程仓库的 test 分支,冒号前面的是本地分支名,冒号后面的是远程分支名,这里冒号前面的为空,表示将本地的一个空分支推送到远程的 test 分支,意思就是删掉远程的 test 分支