git随笔(常用命令归纳)

1.msysgit是Windows版的Git,从https://git-for-windows.github.io下载,然后按默认选项安装即可。(在Linux,Mac OS X上安装Git不做解释)。我就爱最烂的windows平台。

2.安装完成后,在开始菜单里找到“Git”->“Git Bash”,

  $ git config --global user.name "Your Name"

  $ git config --global user.email "Your Email"

3.注意git config命令的--global参数,用了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户名和Email地址。

4.git init   把当前这个目录变成Git可以管理的仓库

5.$ git add demo.txt              提交到暂存区

6.git commit                        提交到分支

7.git status                  掌握仓库当前的状态

8.git diff                   查看修改内容

9.git log                   显示从最近到最远的提交日志   git log --pretty=oneline 忽略次要信息

10.git reset --hard HEAD^          回退到上一个版本  HEAD~100回退到前100个版本

11.git reflog                用来记录你的每一次命令

12.git reset HEAD file             把暂存区的修改撤销掉(unstage),重新放回工作区

13.git checkout -- file             直接丢弃工作区的修改

14.git rm   git commit             从版本库中删除该文件

15.git remote add origin git@server-name:path/repo-name.git  关联远程库

16.git push -u origin master        第一次推送master分支的所有内容

17.git push origin master              推送最新修改

18.git checkout -b dev            创建并切换分支 git checkout命令加上-b参数表示创建并切换相当于 git branch dev  git checkout dev

19.git branch                命令会列出所有分支,当前分支前面会标一个*号。

20.git merge                合并指定分支到当前分支

21.git branch -d dev            合并完后可以删除分支

22.git log --graph             命令可以看到分支合并图

23.修复bug时,我们会通过创建新的bug分支进行修复,然后合并,最后删除;

当手头工作没有完成时,先把工作现场git stash一下,然后去修复bug,修复后,再git stash pop,回到工作现场。

24.git branch -D <name>         强行丢弃一个没有被合并过的分支

25.git remote  git remote -v              查看远程库信息后者更详细

26. 多人协作的工作模式通常是这样:

  1. 首先,可以试图用git push origin branch-name推送自己的修改;

  2. 如果推送失败,则因为远程分支比你的本地更新,需要先用git pull试图合并;

  3. 如果合并有冲突,则解决冲突,并在本地提交;

  4. 没有冲突或者解决掉冲突后,再用git push origin branch-name推送就能成功!

如果git pull提示“no tracking information”,则说明本地分支和远程分支的链接关系没有创建,用命令git branch --set-upstream branch-name origin/branch-name

这就是多人协作的工作模式,一旦熟悉了,就非常简单。

27.git tag <name>/git tag              打一个新标签/查看所有标签

28.git push origin <tagname>            推送某个标签到远程

29.git push origin <tagname>             可以推送一个本地标签    

30.git push origin --tags                可以推送全部未推送过的本地标签

31.git tag -d <tagname>                可以删除一个本地标签

32.git push origin :refs/tags/<tagname>        可以删除一个远程标签。

原文地址:https://www.cnblogs.com/infernofranz/p/6547352.html