学习笔记| git深入浅出 Part1_快速操作指南

Git专题

学习笔记| git深入浅出 Part1_快速操作指南
学习笔记| git深入浅出 Part2_Git基础

常用命令

$ git init                       //对现有的项目进行管理
$ git clone                      //克隆现有的仓库
$ git add filename               //添加指定文件到暂存区
$ git add .                      //添加所有文件至暂存区
$ git commit -m "yourmassage"
$ git push origin master         //推送到远程master分支
$ git status                     //查看文件的状态
$ git status -s                  //文件状态输出报告
$ git diff                       //查看尚未暂存的文件更新了哪些部分,比较工作目录中当前文件和暂存区域快照之间的差异
$ git remote add origin          //添加到远程仓库

版本穿梭

Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,也就是最新的提交3628164…882e1e0(注意我的提交ID和你的肯定不一样),上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100

$ git log                     //查看各个版本号
$ git reset --hard commit_id  //在各个版本中穿梭

穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。
要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。

撤销修改

场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file

场景2:当你不但改乱了工作区某个文件的内容,还用git add添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。

场景3:已经git commit提交了不合适的修改到版本库时,想要撤销本次提交,参考版本穿梭,不过前提是没有推送到远程库。

分支管理

Git鼓励大量使用分支:

查看分支:git branch

创建分支:git branch

切换分支:git checkout

创建+切换分支:git checkout -b

合并某分支到当前分支:git merge

删除分支:git branch -d

注意使用:

$ git merge --no-ff 

合并分支时,加上–no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并。

分支策略

在实际开发中,我们应该按照几个基本原则进行分支管理:

首先,master分支应该是非常稳定的,也就是仅用来发布新版本,平时不能在上面干活;

那在哪干活呢?干活都在dev分支上,也就是说,dev分支是不稳定的,到某个时候,比如1.0版本发布时,再把dev分支合并到master上,在master分支发布1.0版本;

你和你的小伙伴们每个人都在dev分支上干活,每个人都有自己的分支,时不时地往dev分支上合并就可以了。

所以,团队合作的分支看起来就像这样:
学习笔记| git深入浅出 Part1_快速操作指南_第1张图片
另外:忽略某些文件时,需要编写.gitignore

推荐阅读

git 官方文档
廖雪峰的 git 教程

你可能感兴趣的:(Git)