【Git】常用git命令列举与简单注释

git status -s           #标记式描述当前文件状态
git add .               #当前目录所有改动文件和未跟踪文件添加到下一次提交中
git add           #添加制定文件或目录到下一次提交中
git commit -m 'message' #提交暂存目录中的修改快照
git commit -a           #提交工作区的所有改动文件和暂存区的修改快照
git diff          #比较工作区和暂存区
git diff [commit]     #比较工作区和commit
git diff --cached             #比较暂存区和HEAD
git diff [commit1] [commit2]  #比较本地仓库commit1和commit2

git log [-p|--stat|--graph] #-p 版本之间的差异,--stat 差异概览,--graph ASCII图形化显示
git log --pretty=oneline    #单行显示每个commit日志
git log --decorate          #查看各分支指向的commit
git log ..                #查看branch2中还有哪些提交没有被合并入branch1
git log --left-right ...  #查看两个branch的差异提交
git show            #显示某个提交的信息

git rm            #从仓库中移除文件,并且把工作区的文件也一并移除
git rm -f         #当要移除的文件也在暂存区有快照时进行强制移除
git rm --cached   #从仓库中移除文件,但是保留工作区的文件,其中path可以使用glob模式,且要注意使用\来转义特殊字符防止shell的展开
git mv   #文件改名

git reset [--soft|--hard]   #HEAD以及当前分支标记一起移动到指定commit(之前commit有被丢弃的可能)
                                    #默认更新暂存区,用hard则工作区和暂存区都更新,用soft则工作区和暂存区都保留不动
git reset  --     #只会更新暂存区快照去匹配commit(HEAD和当前分支标记都不动)
git checkout  --  #同时更新暂存区和工作区去匹配commit(HEAD不动),没有commit则以暂存区内容去更新工作区
git checkout            #移动HEAD到该commit,并且更新工作区和暂存区的内容以匹配commit
git checkout [HEAD]             #汇总显示工作区、暂存区与HEAD的差异
git checkout .                  #以暂存区快照更新工作区
git checkout -b         #创建并切换到分支
git checkout -b  /  #创建一个本地的跟踪分支并切换到该分支
git checkout --track /      #创建一个本地跟踪分支并切换过去,分支名字和远程分支名字一样

git revert          #撤销某个commit的改动(只撤销该commit的改动),然后做一次新的提交
git revert -m 1     #撤销某个merge commit,-m表示要回退的主线,值为1一般代表当前分支为主线

git merge           #把branch分支合并到当前分支上来
git mergetool               #有冲突时选择相应的可视化工具来解决冲突
git rebase          #变基:以指定分支为基底,然后把当前分支的差异commit重新一个个提交上去,梳理分支提交历史

git branch [-d]                     #创建分支;-d删除分支;
git branch [--merged|--no-merged]   #过滤出合并或未合并到
git branch -u /             #设置或修改当前分支的上游分支,设置好后@{u}代指对应的上游分支/

git remote -v               #已经配置了的远程仓库
git ls-remote         #列出远程仓库的完整引用列表
git remote show       #远程仓库的详细信息
git remote add   #添加远程仓库,以后就直接用代替url
git fetch 【|--all]    #拉取指定的或所有的远程仓库,获取所有分支,之后就可以用/来访问对应分支了
git pull      #抓取对应远程分支然后合并到当前所在分支
git pull --rebase           #相当于先git fetch在git rebase
git push     #推送refspec指定的src分支到远程repo到dst分支(一般远程和本地分支名字匹配的话,给改名即可)
git push  [ | --tags]    #推送单个或全部不在远程服务器上的标签(--tags)到repo
git push  --delete    #删除远程仓库的指定分支

你可能感兴趣的:(【Git】常用git命令列举与简单注释)