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. 多人协作的工作模式通常是这样:
-
首先,可以试图用
git push origin branch-name
推送自己的修改; -
如果推送失败,则因为远程分支比你的本地更新,需要先用
git pull
试图合并; -
如果合并有冲突,则解决冲突,并在本地提交;
-
没有冲突或者解决掉冲突后,再用
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>
可以删除一个远程标签。