为什么要学习Git软件?
主要是对资源进行管理
其中资源主要包括:
1、人力资源
2、代码资源:.html, .css, .js, .java, .py, .c
3、文档资源:doc,ppt,xis,img,pdf,zip
其中这种资源管理的软件叫做配置管理软件
软件配置管理 Software Configuration Management
软件配置管理(SCM)是指通过执行版本控制、变更控制的规程,以及使用合适的配置管理软件,来保证所有配置项的完整性和可跟踪性。配置管理是对工作成果的一种有效保护。
其中版本控制主要包括集中式版本控制和分布式版本控制。
版本主要包括软件版本和文件版本
软件版本:版本越新,功能越完善,性能更好,问题越少
Jdk:1.8 17 20
Mysql:5.7 8.0
Idea:2022 2023
文件版本:给文件加上标记,便于区分
保存重要的历史记录
恢复数据
版本控制软件的基础功能
- 保存和管理文件
- 提供客户端工具进行访问
- 提供不同版本文件的比对功能
集中式版本控制
有一个中央服务器,用户可以通过本地的主机访问资源库然后下载和上传文件,从而可以实现对文件的修改。
可能会引发文件冲突问题(文件被多个人同时修改然后上传,从而导致多个文件被覆盖)
VSS的解决方案:当一个用户下载文件是会对文件进行上锁,当这个用户重新上传后才能重新解锁供别人下载修改
CVS,SVN的解决方案:对开发人员进行约束,开发人员负责文件不同的部分,最后对文件进行整合修改,如果负责了相同的内容,则还是会发生冲突问题,需要人工进行操作。
当中央服务器出现故障时,无法实现文件的上传后下载,可能会引发严重的后果。
分布式版本控制
在本体拥有一个和中央服务器完全相同的资源库,然后通过对本体资源库的访问和修改可以实时反馈到中央数据库,如果中央数据库发生故障也不会限制用户获取文件和上传文件。