GIT的介绍
GIT的介绍
一、GIT和SVN的区别
GIT | SVN |
---|---|
分布式版本控制系统 | 集中式版本控制系统 |
只有中心服务器拥有一份代码 | 每个人电脑上都有一份完整代码 |
若中心服务器挂了其他人仍可操作 | 中心服务器挂了所有人没法工作 |
不需要联网就能工作 | 需要联网才可工作,若网速过慢,提交文件将会很慢 |
新建分支、合并分支操作速度快 | 新建一个分支相当于复制一份完整代码 |
注:中心服务器是用来交换每个用户的修改,没有也可以工作。GitHub就是一个中心服务器。
二、工作流
1.新建一个仓库后,当前目录就是工作区,工作区下有个.git目录,它是Git的版本库。
2.版本库中Stage暂存区以及最后的History版本库,History存有所有分支,使用HEAD指针指向当前分支
工作原理如图所示:
三、储藏
(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 “邮箱地址”。