微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

git分布式版本控制系统

问题:说到分布式,就很容易联想到并发,并行操作带来的一些问题,即同一时刻对同一数据操作带来的冲突问题。比如往数据库里改数据,张三改的3,李四改的四,那就会带来一些问题了,冲突问题

 

解决办法:数据库解决这种问题,采用的是事务机制,就是锁---改数据---解锁,谁先拿到锁了,谁有权利操作,操作完了,解锁,其他人再抢锁,这样能解决冲突问题。

同样的,版本控制系统也可以采用锁机制来解决并行开发带来的冲突,谁先拿到锁,谁提交代码。但是这样就有个问题,一是这样降低了效率,二是万一一个人拿到锁了,一直不解锁,下个人就一直等着拿锁,不能提交代码

另外一种模式,就是copy-Modify-Merge,就是张三李四都拷贝一份儿代码到自己电脑上,张三和李四各自修改代码,提交的时候,再把两个人的代码合并,有冲突的地方,处理掉冲突后,提交一个最新版本。

git采用的是第二种方式,而且每台开发电脑上都有一样的完整的版本库,所以称为分布式版本控制,相对应的就是suv,集中式管理系统

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐