前端常用的版本管理工具

news2024/11/25 0:31:59

一、是什么

版本控制(Version control),是维护工程蓝图的标准作法,能追踪工程蓝图从诞生一直到定案的过程。此外,版本控制也是一种软件工程技巧,借此能在软件开发的过程中,确保由不同人所编辑的同一程序文件都得到同步

透过文档控制,能记录任何工程项目内各个模块的改动历程,并为每次改动编上序号

一种简单的版本控制形式如下:赋给图的初版一个版本等级“A”。当做了第一次改变后,版本等级改为“B”,以此类推

版本控制能提供项目的设计者,将设计恢复到之前任一状态的选择权

简言之,你的修改只要提到到版本控制系统,基本都可以找回,版本控制系统就像一台时光机器,可以让你回到任何一个时间点

二、有哪些

版本控制系统在当今的软件开发中,被认为是理所当然的配备工具之一,根据类别可以分成:

  • 本地版本控制系统
  • 集中式版本控制系统
  • 分布式版本控制系统

本地版本控制系统

结构如下图所示:

优点:

  • 简单,很多系统中都有内置
  • 适合管理文本,如系统配置

缺点:

  • 其不支持远程操作,因此并不适合多人版本开发

集中式版本控制系统

结构如下图所示:

优点:

  • 适合多人团队协作开发
  • 代码集中化管理

缺点:

  • 单点故障
  • 必须联网,无法单机工作

代表工具有SVNCVS

SVN

TortoiseSVN是一款非常易于使用的跨平台的 版本控制/版本控制/源代码控制软件

CVS

CVS是版本控制系统,是源配置管理(SCM)的重要组成部分。使用它,您可以记录源文件和文档的历史记录

老牌的版本控制系统,它是基于客户端/服务器的行为使得其可容纳多用户,构成网络也很方便

这一特性使得CVS成为位于不同地点的人同时处理数据文件(特别是程序的源代码)时的首选

分布式版本控制系统

结构如下图:

优点:

  • 适合多人团队协作开发
  • 代码集中化管理
  • 可以离线工作
  • 每个计算机都是一个完整仓库

分布式版本管理系统每个计算机都有一个完整的仓库,可本地提交,可以做到离线工作,则不用像集中管理那样因为断网情况而无法工作

代表工具为GitHG

Git

Git是目前世界上最先进的分布式版本控制系统,旨在快速高效地处理从小型到大型项目的所有事务

特性:易于学习,占用内存小,具有闪电般快速的性能

使用GitGitlab搭建版本控制环境是现在互联网公司最流行的版本控制方式

HG

Mercurial是一个免费的分布式源代码管理工具。它可以有效地处理任何规模的项目,并提供简单直观的界面

Mercurial是一种轻量级分布式版本控制系统,采用 Python语言实现,易于学习和使用,扩展性强

三、总结

版本控制系统的优点如下:

  • 记录文件所有历史变化,这是版本控制系统的基本能力
  • 随时恢复到任意时间点,历史记录功能使我们不怕改错代码了
  • 支持多功能并行开发,通常版本控制系统都支持分支,保证了并行开发的可行
  • 多人协作并行开发,对于多人协作项目,支持多人协作开发的版本管理将事半功倍

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1179704.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

汽车驾驶智能座舱太阳光模拟器老化试验

一、太阳光模拟器老化试验目的 太阳光模拟器氙光灯老化试验是一种常用的材料老化测试方法,通过模拟自然光照条件下的老化过程,评估材料的耐光性能和耐候性能其主要目的有: 1.评估材料在长时间暴露于自然光照条件下的耐久性能: 2.比较不同材料的耐光性…

龙芯loongarch64服务器编译安装scipy

前言 根据我之前的文章介绍,龙芯loongarch64服务器中的很多python依赖包安装有问题,发现其中安装的"scikit-learn"就无法正常使用,所有这里在 pip3 install scikit-learn -U -i https://pypi.tuna.tsinghua.edu.cn/simple 的时候发…

telnet的使用

用于查看 某个ip某个端口通不通 telnet 136.126.122.123 6380 这个代表通了

NLP项目windows环境搭建

一、安装Anaconda Free Download | Anaconda 二、安装PyCharm PyCharm:JetBrains为专业开发者提供的Python IDE 三、创建Python虚拟环境 1. 打开命令窗口 "开始"菜单中找到Anaconda3 - Anaconda Powershell Prompt 说明: Anaconda Power…

应用在触摸显示屏中的高性能低功耗触摸芯片

触摸屏显示器(Touch Screen)可以让使用者只要用手指轻轻地碰计算机显示屏上的图符或文字就能实现对主机操作,这样摆脱了键盘和鼠标操作,使人机交互更为直截了当。简单的说,只是在显示器上安装了触摸屏,成为带有触摸功能的显示器。…

el-input-number输入框超过限制后自动变为最大值

input输入框使用了el-input-number 需求:目标室温输入框数据库设置最大是4位整数,限制一位小数,且后面要加单位,当输入数字超过限制,默认显示限制的最大值 ,所以就有了输入完图一自动变为图二的数字。 el-i…

CV计算机视觉每日开源代码Paper with code速览-2023.11.3

精华置顶 墙裂推荐!小白如何1个月系统学习CV核心知识:链接 点击CV计算机视觉,关注更多CV干货 论文已打包,点击进入—>下载界面 点击加入—>CV计算机视觉交流群 1.【基础网络架构】(NeurIPS2023)Ai…

MySQL第六讲·where和having的异同?

你好,我是安然无虞。 文章目录 面试常考:where与having有什么不同?一个实际查询需求wherehaving怎么正确的使用where和having? 面试常考:where与having有什么不同? 我们在进行查询的时候,经常…

C语言运行代码示例

这是一个基本的 C 爬虫程序&#xff0c;使用了 C11 版本。这个程序使用了 C11 的标准库&#xff0c;包括了网络编程库&#xff08;<net/http>&#xff09;&#xff0c;字符串处理库&#xff08;<string>&#xff09;和文件操作库&#xff08;<fstream>&#…

Centos7下通过docker安装Rancher2.7搭建Kubernetes

Rancher官方网站&#xff08;中文&#xff09; Rancher单节点 Rancher2.7与Kubernetes部署在同一台设备上 关闭防火墙与selinux #关闭防火墙 systemctl stop firewalld && systemctl disable firewalld && iptables -F #关闭selinux sed -i s/enforcing/di…

聚观早报 |小鹏P7i 550版上市;零一万物发布大模型

【聚观365】11月7日消息 小鹏P7i 550版上市 零一万物发布大模型 vivo X100现身Geekbench 小马智行与丰田联合发布Robotaxi 王云鹏出任百度IDG负责人 小鹏P7i 550版上市 小鹏P7i 550版正式上市&#xff0c;新车共推出550 Pro、550 Max 两款新版型&#xff0c;售价分别为22…

Photoshop Web版本用了哪些CSS技术

本文翻译自 CSS Findings From Photoshop Web Version &#xff0c;作者&#xff1a;Ahmad&#xff0c; 略有删改。 几周前&#xff0c;Adobe发布了一个Web版的Photoshop&#xff0c;它是用WebAssembly、Web组件、P3颜色等网络技术构建的。 Photoshop是我14岁时学会的第一个专…

【I2C】熟悉I2C的传输时序。根据I2C的时序图,标出每段时序对应的含义

参考&#xff1a;I2C -- I2C总线详解_i2c频率-CSDN博客 首先看下I2C协议中数据传输的时序&#xff1a; I2C空闲&#xff1a;SCL和SDA同时处于“高电平”。 I2C起始&#xff1a;SCL维持高电平&#xff0c;SDA由“高电平跳变为低电平”&#xff0c;下降沿。 I2C终止&#xff1a…

机组 硬件

典型的冯诺伊曼计算机是以运算器为中心 现代的计算机已转化为以存储器为中心 运算器&#xff1a;完成算术运算和逻辑运算&#xff0c;并将运算的中间结果暂存在运算器内存储器&#xff1a;存放数据和程序控制器&#xff1a;控制、指挥程序和数据的输入、运行以及处理运算结果输…

【LeetCode】每日一题 2023_11_7 统计范围内的元音字符串数

文章目录 刷题前唠嗑题目&#xff1a;最大单词长度乘积题目描述代码与解题思路偷看大佬题解 结语 刷题前唠嗑 LeetCode? 启动&#xff01;&#xff01;&#xff01; 题目&#xff1a;最大单词长度乘积 题目链接&#xff1a;2586. 统计范围内的元音字符串数 题目描述 代码与…

上海亚商投顾:创业板指放量涨3.26% 两市近4500股飘红

上海亚商投顾前言&#xff1a;无惧大盘涨跌&#xff0c;解密龙虎榜资金&#xff0c;跟踪一线游资和机构资金动向&#xff0c;识别短期热点和强势个股。 一.市场情绪 沪指昨日高开后展开震荡&#xff0c;深成指涨超2%&#xff0c;创业板指大涨超3%&#xff0c;宁德时代涨超5%。…

世界土壤数据库(HWSD)土壤数据集

简介&#xff1a; HWSD&#xff08;Harmonized World Soil Database&#xff09;是联合国粮食及农业组织&#xff08;FAO&#xff09;和国际土壤参考与信息中心&#xff08;ISRIC&#xff09;共同开发的世界土壤数据集。该数据集是一份高分辨率&#xff08;1 km&#xff09;&a…

Gin框架如何使用并搭建一个后台管理系统(四)

到这个时候&#xff0c;我们应该安装上Mysql 开始工作。首先下载安装包mysql-installer-community-8.0.20.0.msi ps&#xff1a;看到有的人window环境下安装不成功可以下载一下依赖的包 NDP452-KB2901907-x86-x64-AllOS-ENU.exe 一、安装mysql 环境和可视化工具 二、导入…

linux修改rocketmq的日志文件位置

文章目录 &#x1f50a;修改rocketmq的日志文件位置&#x1f4d5;原来的文件&#x1f4cc;修改后文件&#x1f4c7;rocketmq中的Rocketmq_client.log文件在配置文件中改不了 需要在代码logback文件中进行修改&#x1f58a;️最后总结 &#x1f50a;修改rocketmq的日志文件位置 …