【Git】第一部分 Git的基本概念
1. Git的基本概念
1.1 版本控制
有了它你就可以将某个文件回溯到之前的状态,甚至将整个项目都回退到过去某个时间点的状态。就算你乱来一气把整个项目中的文件改的改删的删,你也照样可以轻松恢复到原先的样子。
1.2 集中式和分布式
1.2.1 集中式(svn)
什么是集中式?
单一的集中管理的服务器,保存所有文件的修订版本,而协同工作的人们都通过客户端连到这台服务器,取出最新的文件或者提交更新。这种做法带来了许多好处,每个人都可以在一定程度上看到项目中的其他人在做什么,更好的管理版本控制。缺点也很明显:如果服务器宕机一小时,那么在这一小时内,谁都无法提交更新,也就无法协同 ,要是中央服务器的磁盘发生故障,碰巧没做备份,或者备份不够及时,就会有丢失数据的风险。最坏的情况是彻底丢失整个项目的所有历史更改记录。
总结来说:svn
每次存的都是差异,需要的硬盘空间会相对的小一点 ,可是回滚的速度会很慢
-
优点:
代码存放在单一的服务器上 便于项目的管理 -
缺点:
服务器宕机: 员工写的代码得不到保障
服务器故障坏了: 整个项目的历史记录都会丢失
1.2.2 分布式(Git)
什么是分布式?
分布式的版本控制系统在管理项目时,存放的不是项目版本与版本之间的差异,它存的是索引(所需磁盘空间很少 所以每个客户端都可以放下整个项目的历史记录)。分布式的版本控制系统出现之后,解决了集中式版本控制系统的缺陷:
-
断网的情况下也可以进行开发(因为版本控制是在本地进行的)
-
使用 github 进行团队协作,哪怕 github 挂了 每个客户端保存的也都是整个完整的项目(包含历史记录的)
总结来说:git
每次存的都是项目的完整快照,需要的硬盘空间会相对大一点(Git团队对代码做了极致的压缩 最终需要的实际空间比svn多不了太多 ,可是Git的回滚速度极快)
- 优点:
完全的分布式 - 缺点:
学习起来比svn
难
总结
以上就是今天要讲的内容,希望对大家有所帮助!!!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/82918.html