文章目录
一 Git概述
1 Git简介
Git是目前世界上最先进的分布式版本控制系统。
Git创始人 – 林纳斯·托瓦兹。
破解:国外一般称为逆向工程,有产品,没有其需要的技术与设计图纸,可以通过观察产品、运行状态等,将我们所需要的东西倒退出来,做一份自己的产品。
在Linus Torvalds开发出了Git分布式版本控制系统11年后,BitKeeper宣布在Apache 2.0许可证下开源。Linus 是在BitKeeper停止向开源社区提供免费版本后开发了Git,今天Git和其它自由软件版本控制系统已经统治了编程社区,BitKeeper变得无关紧要了。
BitKeeper由BitMover公司开发,该公司CEO Larry McVoy与Linus曾是好友, Larry说服Linus在内核开发中使用BitKeeper。而BitKeeper在免费使用的许可证中加入很多限制条件,惹恼了内核开发者,最终促使Linus开发出了毁灭BitMover的Git。
Git致力于开源组织的使用,用户比较分散,相对于其他的版本管理系统,其优点为分布式和审查机制。
2 GIt的职责
协同开发:类似于目前的共享文档。
冲突解决:一份文件多人修改,可以防止一人的代码被另一人覆盖,或者合并的过程中出现问题。
版本记录:想恢复之前写的代码,类似于虚拟机中的快照功能。
历史追查:每一次代码的更新,都被记录下来,由谁更新,出现问题可以追查到具体的人。
代码申请:自己手里保存一份,服务器上保存一份,甚至云上也有一份。
版本还原:基于版本记录,如果程序上线以后不理想,可以恢复到之前的版本,之后在有问题的版本上进行修改,测试等。
权限管理:谁可以看,谁可以写等问题。
代码审查:如果是背靠背式的开发,此功能可以不要。加入某人发现Spark中的源码写的不好,想要修改,修改后想要贡献给其他适用Spark的用户,这时需要审查提交的代码,审查通过后可以发布。用于互相不信任的人或者团队之间代码的提交。