赞
踩
最近又遇到Git了,发现网络上Git的资料确实不咋滴,难懂不全面。没法,自己来整理整理吧。至于Git是什么我就不多说了,相比svn上手确实更难。与svn集中版本库相比较,Git被称作分布式版本库,在分布式的版本库中任何一个库都可以作为中心库看待。如果说svn是颗树,那么Git就像一张网。Svn在每个目录都有一个.svn文件夹存放信息,而git只在根目录才有,这就决定了svn可以单独拉取某个子目录或者某个文件,而git需要全部拉取。传言高版本git可以,反正我没成功。
废话不多说,先上一张图(在此称赞一下亿图图示专家,尝试了n多软件,连一直在用的xmind也无法表达我的思维。这软件还是国产的哦,简洁美观,顶一下)
图比较大,如果看不清楚请下载我资源,原创的收1分,望理解~~!
下面开始对图详解,假设你是图中的开发者1,红线代表你可以操作的,流程中的虚线代表可以有,但是往往不用的。讲解的顺序图中红圈已经标明。
1:git --bare init
--bare代表只存储变化不存储实际文件,作为中心服务器一般都是这样初始化的。初始化后会默认创建一个master分支(怎么创建其他分支参考下面的git push)。这里一个有趣的问题来了,不是说git是分布式的么,任何一个库都是中心库,那么为何还有中心服务器?中心服务器有什么不同?弄一个中心服务器的好处就不多说了,简单解释下中心服务器的不同之处。我们init一个git库后,要想其他人能访问,必须得共享出去。共享的方式有好多种,需要依赖其他软件如gitosis等。具体请查阅这篇文章。这样别人就能通过clone、pull、push<
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。