1.Git的学习(上)
我最开始学习Git的时候是跟着狂神说老师学习的,包括Java系列大多数也是。所以此处跟狂神老师笔记大多相似!
bilibili:https://www.bilibili.com/video/BV1FE411P7B3?spm_id_from=333.337.search-card.all.click&vd_source=8cd3b58fc55683098e99eeab7f8b7b6e
CSDN:https://blog.csdn.net/qq_33369905/article/details/106647320?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522166255118316800192298123%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=166255118316800192298123&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2alltop_positive~default-1-106647320-null-null.142v47control,201v3control_1&utm_term=%E7%8B%82%E7%A5%9E%E8%AF%B4Git&spm=1018.2226.3001.4187
1.1 版本控制
版本控制(Revision control)是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术。
版本控制的作用:
- 实现跨区域多人协同开发
- 追踪和记载一个或者多个文件的历史记录
- 组织和保护你的源代码和文档
- 统计工作量
- 并行开发、提高开发效率
- 跟踪记录整个软件的开发过程
- 减轻开发人员的负担,节省时间,同时降低人为错误
- 简单说就是用于管理多人协同开发项目的技术。
1.2 常见版本控制工具
Git
Git(读音为/gɪt/)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 [1] 也是Linus Torvalds为 了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。【百度百科】
SVN(Subversion)
CVS(Concurrent Versions System)
VSS(Micorosoft Visual SourceSafe)
TFS(Team Foundation Server)
Visual Studio Online
现在影响力最大且使用最广泛的是Git与SVN
1.3版本控制分类
本地版本控制
记录文件每次的更新,可以对每个版本做一个快照,或是记录补丁文件,适合个人用,如RCS。
集中版本控制 SVN
所有的版本数据都保存在服务器上,协同开发者从服务器上同步更新或上传自己的修改
所有的版本数据都存在服务器上,用户的本地只有自己以前所同步的版本,如果不连网的话,用户就看不到历史版本,也无法切换版本验证问题,或在不同分支工作。而且,所有数据都保存在单一的服务器上