Git进阶技巧------常用命令

一、Git常用命令:

git show             #显示某次提交的内容

git checkout  --<file>     #抛弃工作区修改

git add <file>   #将工作文件修改提交到本地暂存区

git rm <file>     #从版本库中删除文件

git rm <file>  --cached   #从版本库中删除文件,但不删除文件

git reset <file>  #从暂存区恢复到工作文件

git reset --.      #从暂存区恢复到工作文件

git reset  --hard   #恢复最近一次提交过的状态,即放弃上次提交后的所有本次修改

git commit -a   #将git add,git rm 和 git ci等操作都合并在一起做

git commit -am "some comments"

git commit --amend  #修改最后一次提交记录

git revert <&id>  #恢复某次提交的状态。恢复动作本身也创建了一次提交对象

git revert HEAD   #恢复最后一次提交状态

git diff    #差异

git blame <file>    #快速定位每行代码的修改人员和时间日期

git clean --dfx   #清除非git 管理的文件

二、某些重要常用命令详解

  git diff

  git diff <file>   #比较当前文件和暂存去文件差异

  git diff <$id1><$id2> #比较两次提交之间的差异

  git diff <branch1><branch2> #在两个分支之间比较、

  git diff --staged  #比较暂存区和版本库差异

  git diff --cached  #比较暂存区和版本库差异

  git diff --stat  #仅仅比较统计信息

 

  git log 

  git log <file>      #查看该文件每次提交记录

       git log -p <file>   #查看每次详细修改内容的diff

  git log -p -2 #查看最近两次详细修改内容的diff

  git log --stat    #查看提交统计信息

  

  git branch 

  git branch -r      #查看远程分支

  git branch <new_branch>  #创建新的分支

  git branch -v       #查看各个分支最后提交信息

  git branch --merged     #查看已经被合并到当前分支的分支

  git branch --no-merged   #查看尚未被合并到当前分支的分支

  git branch -d <branch>  #删除某个分支

  git branch -D <branch>  #强制删除某个分支(未被合并的分支被删除的时候需要强制)

 

  git checkout

  git checkout <branch>  #切换到某个分支

  git checkout -b <new_branch>   #创建新的分支。并且切换过去

  git checkout -b <new_branch><branch> #基于branch 创建新的new_branch

  git checkout $id  #把某次历史提交记录checkout出来,但无分支信息,切换到其他分支会自动删除

  git checkout $id -b <new_branch> #把某次历史提交记录checkout出来,创建一个分支

  git checkout --.

 

  分支合并和release

  git merge <branch>      #将branch 分支合并到当前分支

  git merge origin/master --no-ff   #不要Fast-Foward合并。这样可以生成merge 提交

  git rebase master <branch>    #将master rebase 到 branch,相当于git checkout <branch> && git rebase master && git co master && git merge <branch>

  

  git 补丁管理

  git diff> ../sync.patch    #生成补丁

  git apply ../sync.patch  #打补丁

  git apply --check ../sync.patch  #测试补丁能否成功

 

  git 暂存管理

  git stash     #暂存

  git stash list        #列所有stash

  git stash apply     #恢复暂存的内容

  git stash drop   #删除暂存区

 

  git远程分支管理

  git pull           #抓取远程仓库所有分支更新并合并到本地

  git pull -no-ff      #抓取远程仓库所有分支更新并合并到本地,不要快进合并

  git fetch origin      #抓取远程仓库更新

  git merge origin/master    #将远程主分支合并到本地当前分支

  git checkout  --track origin/branch    #跟踪某个远程分支创建相应的本地分支

  git checkout -b<local_branch> origin/<remote_branch>  #基于远程分支创建本地分支

  git push    #push 所有分支

  git push origin  master   #将本地主分支推到远程主分支

  git push -u origin master  #将本地主分支推到远程(如没有远程主分支则创建,用于初始化远程仓库)

  git push origin <local_branch> #创建远程分支,origin是远程仓库名

  git push origin <local_branch>:<remote_branch>  #创建远程分支

  git push origin :<remote_branch> #先删除本地分支(git br -d <branch>),然后再push删除远程分支

  git remote -v      #查看远程服务器地址和仓库名称

  git remote show origin user@gitserver/repository.git    #添加远程仓库地址

  git remote set-url origin user@gitserver/repository.git  @设置远程仓库地址(用于修改远程仓库地址)

  git rmote rm <repository>  #删除远程仓库

posted @ 2019-10-30 20:55  森码世界  阅读(456)  评论(0)    收藏  举报