一、什么是git
git是一种使用非常广泛的分布式版本控制系统。
什么是版本控制系统?
大家在进行论文写作的时候,一般会使用word,在最开始的时候一般会将文章保存为最初版,后来经过修改可能会将论文保存为修订版,修订版1,修订版2,最后可能会保存为最终版,最终版1,最终版2,由于word的特殊性,我们每次在进行修改的时候,可能都会将上一个版本进行复制粘贴,修改文件名,然后再进行修改。然后比如说,你觉得修订版2还行,然后去找老师了,说老师你看这个论文行不行啊,老师说这个论文不行啊,还不如上个版本呢,你可以在上个版本上改改,然后我们回来找到上个版本,然后复制一份进行修改,最后保存成修订版3,这个过程其实就是一个版本控制的过程。
版本控制系统它就是来保存在某一时刻,某些文件内容快照的这么个系统。在你需要的时候可以方便的找到某一快照里文件的内容,并且将它们给还原出来。
常见的版本控制系统,分为集中式的版本控制系统,代表就是SVN;分布式的版本控制系统,代表就是git,那么什么是集中式的版本控制系统?什么是分布式的版本控制系统?
集中式版本控制系统.png
集中式的版本控制系统,是将文件的内容,以及版本信息,以及他们的一些修改信息都保存在一个中央服务器上,然后使用者将某一特定版本的文件内容拷贝到本地,然后来进行操作,但是当提交代码或者对比版本之间差异,他就需要跟中央服务器去交换代码,来获取区别。
集中式版本控制系统的缺点就是单点故障,当网络或者中央服务器出现问题的时候,都会出现问题。不能提交代码,不能进行版本对比等。
分布式版本管理系统
分布式版本管理系统,每个使用者并不是只复制某一个特定版本的文件,
而是将整个中央服务器的代码都拷贝到本地,存在一个被大家称作本地仓库的地方,本地仓库就是中央服务器的在某个特定时刻的一份拷贝,当使用者需要提交代码,或者进行版本操作的时候,比如对比版本之间差异的时候,都可以通过与本地仓库进行交互来完成,只有当我需要将代码贡献给别人,与别人进行共享的时候,我才需要将代码推送到远程服务器上。其实在这里,远程服务器就用做一个保存和交换代码的功能。
网友评论