【后端】版本控制

版本控制

1. 什么是版本控制?

版本控制(Revision control)是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术。简单来说就是用于管理多人协同开发项目的技术。

2. 为什么需要版本控制?

没有进行版本控制或者版本控制本身缺乏正确的流程管理,在软件开发过程中将会引入很多问题,如软件代码的一致性、软件内容的冗余、软件过程的事物性、软件开发过程中的并发性、软件源代码的安全性,以及软件的整合等问题。无论是工作还是学习,或者是自己做笔记,都经历过这样一个阶段!我们就迫切需要一个版本控制工具。(多人开发就必须要使用版本控制)。


3. 分类

1. 本地版本控制

通过日期,保证每个不一样

2. 集中版本控制

所有的版本信息都在服务器上。

团队开发每个人都通过服务器拉取信息,自己在本地进行修改,修改之后提交到服务器上。

问题:对于本地的用户,需要联网。服务器损坏,信息就丢失了。

代表产品:SVN

3. 分布式版本控制

服务器上有这些信息,每个人本地的电脑上也有一份。用的时候可以不联网,也可获得信息。

好处:所有人都有完整的代码,服务器损坏不会造成不能工作。

安全隐患:所有人都有代码,万一这个人不安全。

代表产品:git


SVN和git的区别

SVN:

SVN是集中版本控制,所有的版本都是集中的放到中央服务器上,工作的时候用的是自己的电脑,所以想要工作的话,首先要从服务器当中去得到最新的版本,然后去工作,工作完成之后,把自己结束完成的信息推送到服务器。

必须得联网才能工作。

git:

git是分布式版本工作系统,每个人的电脑都有一个完整的版本库,所以在工作的时候不需要联网也行。如果修改文件,只需要把这个文件推送给对方,对方就知道修改了。

而且git工具里,可以看到更新了哪些内容。

相关推荐
渣渣馬5 小时前
shell的if多条件
git·ssh
zh_xuan5 小时前
Visual Studio 上传工程到github
ide·git·github·visual studio
AntoineGriezmann7 小时前
Git 学习笔记
git
无限进步_7 小时前
【C++】只出现一次的数字 II:位运算的三种解法深度解析
数据结构·c++·ide·windows·git·算法·leetcode
无限进步_9 小时前
【C++】多重继承中的虚表布局分析:D类对象为何有两个虚表?
开发语言·c++·ide·windows·git·算法·visual studio
回家路上绕了弯10 小时前
Git worktree 终极指南:告别分支切换烦恼,实现多分支并行开发
git·后端
日更嵌入式的打工仔11 小时前
Git & TortoiseGit
git
会的越多不会的也就越多12 小时前
Win11 右键菜单优化指南:如何把 Git 功能“提”到一级菜单?
git
rebekk14 小时前
claude工作区与git仓库的关系
linux·git·python
神の愛14 小时前
GIT,可以参数这篇,需要加以理解,文字比较冗余,还请见谅
git