Git实战之基础篇

写在最前

之前有写过对Git的一点点使用,但是不会的还是太多了。

趁着鹏飞讲了Git,自己也跟着走一走。

Git Commit

Git仓库中的提交记录保存的是你目录下所有文件的快照,同时Git希望提交记录尽量轻量,因此在你每次进行提交时,它并不会盲目地复制整个目录。条件允许的情况下,它会将当前版本与仓库中的上一个版本进行对比,并把所有的差异打包到一起作为一个提交记录。当然Git也保存了提交的历史记录。

1
2
3
$git commit 
# 不过公司提交一般要求加上备注
$git commit -m 'your comment'

Git Branch

Git 的分支也非常轻量。它们只是简单地指向某个提交纪录 —— 仅此而已。网上大佬们都说:
早建分支!多用分支!

因为创建再多的分支也不会造成存储或者内存上的开销,并且按照逻辑分解到不同的分支比维护臃肿的分支简单很多。

使用分支可以理解为“我想基于这个提交以及他的所有父提交进行新的工作”

1
2
3
4
# 创建新分支
$git branch bugFix
# 切换到新分支
$git checkout bugFix

Git Merge

在我们新建好分支且完成新功能的开发之后,这个时候我们需要将其合并回主线。我们先来看看第一种方法git merge

1
2
3
4
5
6
$ git branch bugFix
$ git checkout bugFix
$ git commit
$ git checkout master
$ git commit
$ git merge bugFix

Merge

Git Rebase

git rebase同样是合并分支的方法,其实质是取出一系列的提交记录,“复制”他们,然后再另一个地方逐个的放下去。

Rebase的优势是可以创造更线性的提交历史,因为如果只使用Rebase的话,代码库的提交历史将会变得异常清晰。

1
2
3
4
5
6
7
$ git branch bugFix
$ git checkout bugFix
$ git commit
$ git checkout master
$ git commit
$ git checkout bugFix
$ git rebase master

Rebase