Git常用命令速查表

  1. 全局配置用户名字和邮箱
  2. 查看不同作用域的配置信息
  3. 在已存在的项目初始化仓库
  4. 新建项目并初始化仓库
  5. 查看git状态
  6. 提交某个文件的修改
  7. 提交已经跟踪的所有修改
  8. 提交所有修改
  9. 颗粒化提交修改
  10. 提交修改到仓库
  11. 直接提交所有的已跟踪的修改到仓库
  12. 修改上一次提交
  13. 查看工作区和暂存区之间的区别
  14. 查看某个文件工作区和暂存区之间的区别
  15. 用于查看暂存区和上一个提交之间的区别
  16. 用于展示工作区和上一次提交之间的区别
  17. 用于展示两个提交之间的区别
  18. 用于查看所有的提交
  19. 用于查看最近n次提交
  20. 用于展示每次提交log以及每次的改动
  21. 用于展示每次提交log以及每次的改动的简要统计
  22. 用于展示一行简略信息
  23. 用简单图形展示
  24. 用于展示上一个提交的修改
  25. 用于展示特定提交的修改
  26. 用于展示特定提交的修改的文件名
  27. 打印最近操作所对应的commit id
  28. 从工作区删除文件,并且从仓库中移除对某个文件的跟踪
  29. 只移除对该文件的跟踪,但是依旧在工作区保留文件
  30. 安全重命名
  31. 删除未跟踪并且未被.gitignore忽略的文件
  32. 查看哪些文件将会被删除,但是不会真正删除
  33. 撤销工作区某个文件修改
  34. 撤销所有文件
  35. 恢复某个commit的指定文件到暂存区和工作区
  36. 撤销当前暂存区的修改
  37. 版本回退
  38. 只移动仓库中HEAD指针的位置,工作区和暂存区的修改都不变
  39. 移动HEAD指针的位置,并使用回退的到版本重置暂存区,工作区的修改保持不变
  40. 移动HEAD指针位置,并使用回退的到版本重置工作区和暂存区,保持与指定的提交一致
  41. 重置修改
  42. 新建一个提交重置目标提交
  43. 重置目标提交,但是不会新建提交,而是修改工作区和暂存区
  44. 重置多个提交(不包括start-id,但是包括end-id)
  45. 在revert遇到冲突并解决冲突后,继续执行撤销操作
  46. 终止revert,但保留当前的结果
  47. 撤销revert
  48. 列出本地所有分支
  49. 列出所有远程分支(后文会讲解什么是远程分支)
  50. 列出所有本地和远程分支
  51. 查看分支的详细信息
  52. 新建分支
  53. 新建分支并切换分支
  54. 切换分支
  55. 切换到上一个分支
  56. 删除分支(针对已经合并过的分支)
  57. 删除分支(不管是否合并)
  58. 合并分支
  59. 不使用fast-forward模式合并
  60. 挑选一个commit合并到当前分支
  61. 挑选指定分支的最新提交
  62. 挑选连续多个提交(左开右闭,不包括start-commit)
  63. 在解决冲突后,继续执行下一个cherry-pick
  64. 退出操作,保留当前进度
  65. 撤销本次操作
  66. 查看所有tag
  67. 筛选相应的tag
  68. 查看某个commit上所有的tag
  69. 查看某一个tag
  70. 查看所有tag以及它们分别对应的commit
  71. 新建tag
  72. 在指定的提交新建tag
  73. 添加一个tag和message
  74. 删除tag
  75. 新建stash
  76. 指定你想要的messge信息
  77. 将未跟踪的文件也加入暂存
  78. 将所有文件加入暂存(即使该文件被git忽略)
  79. 查看暂存的历史
  80. 查看某一个次特定的暂存
  81. 取出最近的暂存
  82. 取出目标暂存
  83. 取出最近暂存,并删除该暂存的记录
  84. 删除最近暂存
  85. 删除目标暂存
  86. 清空历史
  87. 合并分支
  88. 可以交互式的操作到commi-id为止的提交(不包括commit-id所指向提交)的所有提交
  89. 拉取代码,并使用默认的远端仓库的名字
  90. 拉取代码,自定义本地仓库名字
  91. 添加远程仓库
  92. 查看远端仓库信息
  93. 删除远程仓库
  94. 重命名远程操作名字
  95. 推送分支到特定的远程仓库,如果只有一个远程仓库可以省略,第一次推送需要加入-u参数
  96. 推送指定tag到远端
  97. 推送所有tag到远端
  98. 拉取更新
  99. 获取远端仓库更新,并自动合并到本地分支(相当于git fetch && git merge)
  100. 使用rebase方式拉取更新

用户信息配置

全局配置用户名字和邮箱

git congfig user.name “xxxx” –global
git config user.email “xxx@xx.com“ -global

查看不同作用域的配置信息

git config –list –local
git config –list –global
git config –list –system
复制代码
初始化仓库

在已存在的项目初始化仓库

cd
git init

新建项目并初始化仓库

git init
复制代码
提交修改

查看git状态

git status

提交某个文件的修改

git add

提交已经跟踪的所有修改

git add -u

提交所有修改

git add –all
git add .

颗粒化提交修改

git add -p

提交修改到仓库

git commit -m “

直接提交所有的已跟踪的修改到仓库

git commit -a -m “
git commit -am “

修改上一次提交

git commit –amend
git commit –amend –no-edit
复制代码
查看提交历史

查看工作区和暂存区之间的区别

git diff

查看某个文件工作区和暂存区之间的区别

git diff –

用于查看暂存区和上一个提交之间的区别

git diff –cached

用于展示工作区和上一次提交之间的区别

git diff HEAD

用于展示两个提交之间的区别

git diff

用于查看所有的提交

git log

用于查看最近n次提交

git log -

用于展示每次提交log以及每次的改动

git log -p

用于展示每次提交log以及每次的改动的简要统计

git log –stat

用于展示一行简略信息

git log –oneline

用简单图形展示

git log –graph

用于展示上一个提交的修改

git show

用于展示特定提交的修改

git show

用于展示特定提交的修改的文件名

git show –name-only

打印最近操作所对应的commit id

git reflog
复制代码
文件删除&安全重命名&忽略

从工作区删除文件,并且从仓库中移除对某个文件的跟踪

git rm

只移除对该文件的跟踪,但是依旧在工作区保留文件

git rm –cached

安全重命名

git mv

删除未跟踪并且未被.gitignore忽略的文件

git clean

查看哪些文件将会被删除,但是不会真正删除

git clean -n
复制代码
撤销修改,代码回滚

撤销工作区某个文件修改

git checkout

撤销所有文件

git checkout .

恢复某个commit的指定文件到暂存区和工作区

git checkout

撤销当前暂存区的修改

git reset

版本回退

只移动仓库中HEAD指针的位置,工作区和暂存区的修改都不变

git reset –soft

移动HEAD指针的位置,并使用回退的到版本重置暂存区,工作区的修改保持不变

git reset –mixed

移动HEAD指针位置,并使用回退的到版本重置工作区和暂存区,保持与指定的提交一致

git reset –hard

重置修改

新建一个提交重置目标提交

git revert

重置目标提交,但是不会新建提交,而是修改工作区和暂存区

git revert -n

重置多个提交(不包括start-id,但是包括end-id)

git revet

在revert遇到冲突并解决冲突后,继续执行撤销操作

git revert –continue

终止revert,但保留当前的结果

git revert –quit

撤销revert

git revert –abort
复制代码
分支

列出本地所有分支

git branch

列出所有远程分支(后文会讲解什么是远程分支)

git branch -r

列出所有本地和远程分支

git branch -a

查看分支的详细信息

git branch -v

新建分支

git branch

新建分支并切换分支

git checkout -b

切换分支

git checkout

切换到上一个分支

git checkout -

删除分支(针对已经合并过的分支)

git branch -d

删除分支(不管是否合并)

git branch -D

合并分支

git merge

不使用fast-forward模式合并

git merge –no-ff

挑选一个commit合并到当前分支

git cherry-pick

挑选指定分支的最新提交

git cherry-pick

挑选连续多个提交(左开右闭,不包括start-commit)

git cherry-pick
挑选连续多个提交(左闭右闭,包括start-commit)
git cherry-pick ^…

在解决冲突后,继续执行下一个cherry-pick

git cherry-pick –continue

退出操作,保留当前进度

git cherry-pick –quit

撤销本次操作

git cherry-pick –abort
复制代码
打上Tag

查看所有tag

git tag

筛选相应的tag

git tag -l

查看某个commit上所有的tag

git tag –points-at

查看某一个tag

git show

查看所有tag以及它们分别对应的commit

git show-ref –tags

新建tag

git tag

在指定的提交新建tag

git tag

添加一个tag和message

git tag -a -m

删除tag

git tag -d
复制代码
紧急加塞,使用stash

新建stash

git stash

指定你想要的messge信息

git stash save

将未跟踪的文件也加入暂存

git stash -u

将所有文件加入暂存(即使该文件被git忽略)

git stash -a

查看暂存的历史

git stash list

查看某一个次特定的暂存

git show stash@{}

取出最近的暂存

git stash apply

取出目标暂存

git stash apply

取出最近暂存,并删除该暂存的记录

git stash pop

删除最近暂存

git stash drop

删除目标暂存

git stash drop

清空历史

git stash clear
复制代码
变基

合并分支

git rebase

可以交互式的操作到commi-id为止的提交(不包括commit-id所指向提交)的所有提交

git rebase -i <commit-id
复制代码
远程仓库

拉取代码,并使用默认的远端仓库的名字

git clone

拉取代码,自定义本地仓库名字

git clone

添加远程仓库

git remote add

查看远端仓库信息

git remote -v

删除远程仓库

git remote remove

重命名远程操作名字

git remote rename

推送分支到特定的远程仓库,如果只有一个远程仓库可以省略,第一次推送需要加入-u参数

git push

推送指定tag到远端

git push

推送所有tag到远端

git push –tags

拉取更新

git fetch

获取远端仓库更新,并自动合并到本地分支(相当于git fetch && git merge

git pull

使用rebase方式拉取更新

git pull –rebase
复制代码


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以邮件至 chaofa_vip@126.com

文章标题:Git常用命令速查表

文章字数:1.6k

本文作者:Hechaofa

发布时间:2019-05-20, 08:00:47

最后更新:2019-12-22, 17:06:00

原始链接:https://chaofavip.github.io/2019/05/20/linux/git/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

目录
×

喜欢就点赞,疼爱就打赏