GIT的介绍

一、GIT和SVN的区别

GIT SVN
分布式版本控制系统 集中式版本控制系统
只有中心服务器拥有一份代码 每个人电脑上都有一份完整代码
若中心服务器挂了其他人仍可操作 中心服务器挂了所有人没法工作
不需要联网就能工作 需要联网才可工作,若网速过慢,提交文件将会很慢
新建分支、合并分支操作速度快 新建一个分支相当于复制一份完整代码

注:中心服务器是用来交换每个用户的修改,没有也可以工作。GitHub就是一个中心服务器。

二、工作流

1.新建一个仓库后,当前目录就是工作区,工作区下有个.git目录,它是Git的版本库。
2.版本库中Stage暂存区以及最后的History版本库,History存有所有分支,使用HEAD指针指向当前分支
工作原理如图所示:
GIT的介绍

GIT的介绍

三、储藏

(1)在一个分支操作之后,如果还没将修改的提交到分支上,此时进行切换分支,那么另一个分支也会看到新的修改,因为所有分支共用一个工作区。
(2)此时便可以使用git stash将当前分支储藏起来,此时当前工作区的修改会被存到栈上,也就是当前工作区是干净的,没有任何未提交的修改,此时便可切换分支。
(3)常用于bug分支的实现,如果当前在Dev分支上开发,但是master上有个bug修改,但是Dev的并不想提交,这时就需要将Dev分支未提交的储藏起来。

四、SSH传输设置

(1)Git仓库和GitHub中心仓库之间传输通过SSH加密。
(2)若没有.ssh、id_rsa、id_rsa.pub文件,可以通过此命令创建:ssh-****** -t rsa -C “邮箱地址”。