Git使用系列01-->版本控制介绍

国产FPGA开发实战:紫光同创编程软件中的约束文件详解与常见问题 本文详细解析了紫光同创FPGA编程软件中约束文件的关键配置技巧与常见问题。通过基础架构解析、时钟约束实践、物理约束调控及典型问题排查指南,帮助开发者高效掌握国产FPGA开发中的约束文件应用,提升开发效率与设计稳定性。 阅读详情

前言

成功不是将来才有的,而是从决定去做的那一刻起,持续累积而成。
     在测试工作中,我们或多或少都接触过svn\github,当然git是趋势,笔者来一个系列的git,期待大家能有所收获。

一、版本控制概念

  • 版本控制是指对软件开发过程中各种程序代码、配置文件及说明文档等文件变更的管理,是软件配置管理的核心思想之一。
  • 它的核心功能包括:
    1、追踪文件的变更,它将什么时候、什么人更改了文件的什么内容等信息忠实地了记录下来。每一次文件的改变,文件的版本号都将增加
    2、并行开发,软件开发往往是多人协同作业,版本控制可以有效地解决版本的同步以及不同开发者之间的开发通信问题,提高协同开发的效率

二、使用版本控制系统的优势

  • 协同合作:
    每一个团队成员都可以在任何时间对任何文件毫无顾虑的进行修改,版本控制系统可以把之后所有的改动合并成一个共同的版本,不论是一个文件还是整个项目。
  • 正确存储版本:
    经常性地保存项目的改动是一个非常重要的习惯。但是如果没有版本控制系统这个操作将是非常困难的,并且非常容易出错,比如:你如何知道在第一个版本和第二个版本之间到底进行了哪些改动?你如何命名这些版本?通过名字是很难追踪和判断改动
  • 恢复之前的版本:
    要把一些文件恢复到上次改动之前的版本(甚至整个项目恢复到之前的版本)。
  • 了解发生了什么:
    每当你提交一次对项目新的改动时,你的版本管理系统会要求你添加一个对这次改动的简短描述。除此之外,你还可以看到一个改动前和改动后的内容的详细对照。
  • 备份:
    每一个团队成员都会在他的本地有一个完整的项目副本,包括整个项目的历史记录。如果你所依赖的服务器宕机了,或者是你的存储硬盘坏,所有你需要的恢复文件都可以在另外的团队成员那得到。

三、版本控制工作包含内容

  • 检入检出控制,软件开发人员对源文件的修改不能在软件配置管理库中进行,对源文件的修改依赖于基本的文件系统并在各自的工作空间下进行。为了方便软件开发,需要不同的软件开发人员组织各自的工作空间。一般说来,不同的工作空间由不同的目录表示,而对工作空间的访问,由文件系统提供的文件访问权限加以控制。
  • 版本分支(以一个已有分支的特定版本为起点,但是独立发展的版本序列)的人工方法就是从主版本——称为主干上拷贝一份,并做上标记。在实行了版本控制后,版本的分支也是一份拷贝,这时的拷贝过程和标记动作由版本控制系统完成。版本合并(来自不同分支的两个版本合并为其中一个分支的新版本)有两种途径,一是将版本A的内容附加到版本B中;另一种是合并版本A和版本B的内容,形成新的版本C。
  • 历史记录,版本的历史记录有助于对软件配置项进行审核,有助于追踪问题的来源。历史记录包括版本号、版本修改时间、版本修改者、版本修改描述等最基本的内容,还可以有其他一些辅助性内容,比如版本的文件大小和读写属性。

四、版本控制系统发展史

  • 4.1 本地版本控制系统:
    许多人习惯用复制整个项目目录的方式来保存不同的版本,或许还会改名加上备份时间以示区别。 这么做唯一的好处就是简单,但是特别容易犯错。 有时候会混淆所在的工作目录,一不小心会写错文件或者覆盖意想外的文件。
    为了解决这个问题,人们很久以前就开发了许多种本地版本控制系统,大多都是采用某种简单的数据库来记录文件的历次更新差异。
    其中最流行的一种叫做 RCS,现今许多计算机系统上都还看得到它的踪影。 RCS 的工作原理是在硬盘上保存补丁集(补丁是指文件修订前后的变化);通过应用所有的补丁,可以重新计算出各个版本的文件内容。

  • 4.2 集中化版本控制系统:
    Centralized Version Control Systems,简称 CVCS,与本地版本控制系统不同,集中化版本控制系统能让在不同系统上的开发者进行协同工作。 这类系统,诸如 CVS、Subversion 以及 Perforce 等,都有一个单一的集中管理的服务器,保存所有文件的修订版本,而协同工作的人们都通过客户端连到这台服务器,取出最新的文件或者提交更新。 多年以来,这已成为版本控制系统的标准做法。
    每个人都可以在一定程度上看到项目中的其他人正在做些什么。而管理员也可以轻松掌控每个开发者的权限,并且管理一个 CVCS 要远比在各个客户端上维护本地数据库来得轻松容易。
    集中化版本控制系统最显而易见的缺点是中央服务器的单点故障。如果宕机一小时,那么在这一小时内,谁都无法提交更新,也就无法协同工作。要是中央服务器的磁盘发生故障,碰巧没做备份,或者备份不够及时,就会有丢失数据的风险。

  • 4.3 分布式版本控制系统:
    Distributed Version Control System,简称 DVCS,在这类系统中,像 Git、Mercurial、Bazaar 以及 Darcs 等,客户端并不只提取最新版本的文件快照, 而是把代码仓库完整地镜像下来,包括完整的历史记录。 这么一来,任何一处协同工作用的服务器发生故障,事后都可以用任何一个镜像出来的本地仓库恢复。 因为每一次的克隆操作,实际上都是一次对代码仓库的完整备份。
    更进一步来讲,许多这类系统都可以指定和若干不同的远端代码仓库进行交互。籍此,你就可以在同一个项目中,分别和不同工作小组的人相互协作。

【黑马-产品经理入门基础课笔记】01.认识产品经理 问题定义 ==> 可行性研究 ==> 需求分析。 阅读详情

相关推荐

从Google到LLVM:5种主流clang-format预设风格横向对比(含代码对比图)

本文横向对比了LLVM、Google、Chromium、Mozilla和WebKit五种主流的clang-format预设代码风格。通过同一段C++代码的格式化效果对比图,直观展示了它们在指针对齐、大括号换行、缩进等关键细节上的差异,并提供了基于团队背景与项目基因的选型决策指南。

weixin_28828243的博客 444

Git【版本控制和Git的安装介绍】

Git是分布式版本控制系统,那么它就没有中央服务器的,每个人的电脑就是一个完整的版本库,这样,工作的时候就不需要联网了,因为版本都是在自己的电脑上。既然每个人的电脑都有一个完整的版本库,那多个人如何协作呢?比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。下图就是分布式版本控制工具管理方式:仓库(版本库):相当于一个专门用来存放代码的目录。这个目录里面的所有文件都可以Git管理,每个文件的增删改查都能被Git跟踪到。

热情、奔放、快乐编程! 1313

Coze HTTP请求节点实战:5分钟搞定天气API对接(含动态参数技巧)

本文通过一个天气预报API对接的实战案例,详细讲解了如何在Coze平台使用HTTP请求节点实现外部数据交互。文章重点演示了动态参数传递、JSON响应解析与错误处理等核心技巧,帮助开发者在5分钟内快速构建稳定可靠的智能体外部服务调用能力。

weixin_29233333的博客 676

git使用系列01-->版本控制介绍

这类系统,诸如 CVS、Subversion 以及 Perforce 等,都有一个单一的集中管理的服务器,保存所有文件的修订版本,而协同工作的人们都通过客户端连到这台服务器,取出最新的文件或者提交更新。Distributed Version Control System,简称 DVCS,在这类系统中,像 Git、Mercurial、Bazaar 以及 Darcs 等,客户端并不只提取最新版本的文件快照, 而是把代码仓库完整地镜像下来,包括完整的历史记录。另一种是合并版本A和版本B的内容,形成新的版本C。

Meryoufdd的博客 155

【Proteus】NE555纯硬件实现LED呼吸灯效果,附源文件,效果展示

本设计通过NE555与三极管的巧妙配合,仅用基础元件实现了呼吸灯效果。核心在于利用RC积分电路将PWM信号转换为控制电压,并通过负反馈动态调节占空比。Proteus仿真验证了方案的可行性,读者可进一步优化参数或扩展功能,探索更多硬件设计可能性。

2201_75797484的博客 2983

技术前沿:半导体前道检测和量测设备修复技术

半导体前道检测设备是目前除光刻机外,国产渗透率较低的环节之一,近年来我国初步实现国产突破。前道检测相对后道检测环节壁垒更高,国内多家涉及后道测试,涉及前道检测和中道检测相对较少。

VOMMA的博客 4544

01 【版本控制和Git的安装介绍】

01 【版本控制和Git的安装介绍】

DSelegent的博客 355

手把手教你用certificate-manager修复Vcenter证书过期问题(附密码重置技巧)

本文详细解析了Vcenter证书过期引发的503服务不可用、密码错误等典型故障现象,并提供了使用certificate-manager工具进行系统性修复的完整步骤。文章重点阐述了证书体系原理、精准诊断方法,并分享了在SSO验证失败时通过vdcadmintool重置密码的关键技巧,帮助管理员快速恢复平台并建立预防性运维策略。

swift5iosmith的博客 460

版本控制工具 之 Git

版本控制工具 之 Git

玄鱼殇 4588

手把手教你用Cadence Virtuoso设计折叠式共源共栅放大器(0.18μm工艺实战)

本文详细介绍了在0.18μm工艺下使用Cadence Virtuoso设计折叠式共源共栅放大器的完整流程。从工艺参数获取、电路架构分析到具体参数计算和仿真验证,提供了实战设计指南,帮助工程师掌握这一模拟IC设计中的关键技术,特别适合需要中等增益和较大输出摆幅的应用场景。

open4的博客 410

电压电流双闭环PFC单相PWM整流

电压电流双闭环PFC单相整流。仿真及代码

xht2403267701的博客 6052

【Git】Git01:Git版本控制的基本操作和原理

本文摘要: Git是一款强大的分布式版本控制系统,用于高效管理代码版本和团队协作。文章详细介绍了Git的安装配置流程,即工作原理。

正经教主是个热衷于正经学习分享的教主。 1285

LIN总线从入门到精通:低成本汽车通信协议原理与实战

在汽车电子和嵌入式系统中,串行通信协议是实现分布式控制的关键技术。其中,LIN(Local Interconnect Network)总线作为一种专为低成本应用设计的单主多从网络协议,其核心原理在于通过简化的“领导-汇报”通信模式,在满足车身控制、传感器数据采集等场景需求的同时,将硬件与布线成本降至最低。LIN总线采用标准化的帧结构,包含间隔场、同步场和受保护标识符场,并依赖调度表来管理通信时序,确保了网络的确定性与可靠性。其技术价值在于为车窗、座椅、灯光等非安全关键系统提供了高性价比的解决方案,是构建分层

weixin_29185167的博客 261

Git的安装、配置、使用01【Git Bash Here命令行操作】

Git的安装、配置、使用02【Idea的支持使用】https://blog.youkuaiyun.com/qq_45037155/article/details/123446538 Git的安装、配置、使用02【Idea的支持使用】https://blog.youkuaiyun.com/qq_45037155/article/details/123446538 目录 一、版本控制工具 1. 什么是版本控制工具 2. 版本控制工具的作用 3. 目前市场常见的版本控制工具及分类 3.1 集中式版本控制工具 3....

书启鸿蒙知秋枫 8927

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

Git版本控制

Git版本控制系统摘要 Git是一款分布式版本控制工具,区别于集中式CVCS,其核心优势在于本地完整保存代码仓库和历史记录,确保数据安全。主要功能包括:1)记录文件修改历史,支持版本回溯;2)通过工作区、暂存区、版本库三区协作管理文件状态(未跟踪/已修改/已暂存/未修改);3)提供clone/add/commit/push等基础命令实现代码管理;4)支持分支创建与合并,解决多任务并行开发冲突;5)可关联GitHub/Gitee等远程仓库。关键操作包含:初始化配置、文件状态转换、冲突解决(手动修改后重新提交)

2401_84909154的博客 1042

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

超详细Git版本控制及Git的使用

目录 1.Git文件的三种状态与工作模式 1.1文件的三种状态 1.2Git项目的三个工作区域 1.3基本git工作流程 2.Git的使用 2.1Git使用SSH链接下载源码 2.2创建版本库并提交文件 2.2.1编写一个文本文件并将其提交到git仓库 2.2.2将项目提交到本地仓库 2.2.3提交文件到本地版本库 1.Git文件的三种状态与工作模式 1.1文件的三种状态 使用git操作文件时,文件的状态有以下三种: 已提交(commi

m0_51755285的博客 2569

【git篇】git的使用

Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。集中式(SVN) VS 分布式(git)集中式版本控制系统,版本库是集中存放在中央服务器的,工作时要先从中央服务器取得最新的版本,完成工作后,再把自己的文件推送给中央服务器。集中式版本控制系统在工作时需要联网。分布式版本控制系统没有“中央服务器”,每个人的电脑上都是一个完整的版本库,所以就不需要联网。

weixin_45842494的博客 3万+

Git 开源的版本控制系统入门使用介绍 git 对比 svn

GitHub 是全球最大的基于 Git 的代码托管平台之一,拥有庞大的开发者社区和海量的开源项目。开发者可以在 GitHub 上托管代码、协作开发、管理项目、发布版本等。:GitLab 是另一个流行的基于 Git 的代码托管平台,提供了类似于 GitHub 的功能,但它更侧重于企业和团队的自托管解决方案。:Bitbucket 是由 Atlassian 公司提供的基于 Git 和 Mercurial 的代码托管平台,提供了与 GitHub 和 GitLab 类似的功能,包括代码托管、问题跟踪、持续集成等。

1091

【Git】01 Git介绍与安装

本文先是介绍了集中式和分布式VCS的区别,后面引出Git分布式版本管理系统,之后便是Git的安装,以及它的简单配置,即用户名和邮箱的配置。内容相对简单,主要需要掌握Git的用户名和邮箱配置,以及了解配置级别local、global和system。

非凡博客 972

版本控制神器之Git深入介绍

Svn集中式的版本控制工具,Svn中,必须要有中央仓库,所有的版本信息都保存在中央仓库中,代码的前进、回退、删除等等操作都需要在中央仓库中进行,用户本地保存的只是版本仓库的一个副本,Svn中的分支非常臃肿。我们在分支上的相关的操作其实的独立的,我们提交到分支对应的版本库中的情况下,其他分支中是查看不到了,包括主分支,如果我们想要在主分支中查看到对应的信息,我们就需要操作分支合并。git里边默认的版本好不容易记。版本库:存放已经提交的数据,push的时候,就是将这个区域中的数据push到远程仓库的。

m0_52514893的博客 1354

Git 分布式版本控制工具01:Git介绍+下载+安装

Git是一个分布式版本控制工具,主要用于管理开发过程中的源代码文件(Java类、xml文件、html页面等),在软件开发过程中被广泛使用。在IDEA开发工具中可以集成Git(后面会讲解Git安装和集成过程):集成后在IDEA中可以看到Git相关图标:Git 是一个分布式版本控制工具,通常用来对软件开发过程中的源代码文件进行管理。本地仓库:开发人员自己电脑上的 Git 仓库远程仓库:远程服务器上的 Git 仓库解释说明:commit:提交,将本地文件和版本信息保存到本地仓库。.........

小李的研究生学习日记 1万+

Git系列:git log 掌握版本控制的精髓

git log是 Git 中一个功能强大的命令,它不仅可以帮助开发者了解项目的提交历史,还可以通过各种选项和技巧来优化查询过程,提高工作效率。掌握git log的高级用法,对于任何希望深入理解和有效利用 Git 的开发者来说都是必不可少的。希望本文能够为你的 Git 之旅提供一些有价值的指导和启发。本文以正式的风格撰写,旨在为中高级开发者提供实用的git log使用技巧。通过对命令的基本用法、高级功能以及实战技巧的介绍,希望能够帮助你更深入地理解 Git 的强大功能,并在日常开发中更加得心应手。

专注于全栈开发领域 1191

使用Git进行版本控制

使用Git进行版本控制 00、前言 ​  使用版本控制软件,可以无忧无虑德修改项目,改进项目,不用担心项目因你犯错遭到破坏。 Git是当前最流行的版本控制软件。本文主要介绍在Windows系统中安装Git及其相关操作。 文章目录使用Git进行版本控制00、前言01、在Windows系统中安装Git01.1配置Git01.2创建项目02、创建远程仓库03、配置ssh密匙04、提交项目04.1初始化本地仓库04.2初始化:04.3将项目中未被跟踪的所有文件加入到仓库中:04.4提交项目信息

令狐_JackieHao的博客 479

Git-01-Git课程介绍

Git是一个开源的分布式版本控制系统,由Linus Torvalds在2005年创建,目的是为了更好地管理Linux内核开发。它允许多个开发者在各自的开发分支中工作,同时保持代码历史的完整性和同步性。Git的设计哲学是速度、简单性、非线性的开发(成千上万的并行分支)、完全分布式、以及对大型项目(如Linux内核)的高效管理。Git不仅是一个工具,更是一种工作方法。掌握Git,就是掌握了一个让你的代码和团队协作更加高效的能力。在这个旅程中,我们将一起学习、探索,并最终精通Git。

tang7mj的博客 557

版本控制SoEasy之Git-01

Git是什么? Git是一种常用的版本控制系统,我们常见的版本控制系统有git和svn。 要知道怎么使用首先要了解它的概念。 什么是版本控制 版本控制是指对软件开发过程中各种程序代码、配置文件及说明文档等文件变更的管理,是软件配置管理的核心思想之一。 实现跨区域多人协同开发 追踪和记载一个或者多个文件的历史记录 组织和保护你的源代码和文档 统计工作量 并行开发、提高开发效率 跟踪记录整个软件的开...

风尘小白沙 450

版本控制工具 Git -day01

版本控制 什么是“版本控制”?我为什么要关心它呢? 版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。 在接下来所展示的例子中,我们对保存着软件源代码的文件作版本控制,但实际上,你可以对任何类型的文件进行版本控制。 如果你是位图形或网页设计师,可能会需要保存某一幅图片或页面布局文件的所有修订版本(这或许是你非常渴望拥有的功能),采用版本控制系统(VCS)是个明智的选择。...

隔壁老王的博客 398

【五一创作】版本控制-从零开始学Git-01什么是Git

什么是"版本控制"?版本控制就是一种记录一个或多个文件内容变化、以便开发者 或者其他用户将来对特定版本的文件进行查阅、备份、恢复等操作的系统,即版本控制系统。(VCS,version control system)。

Sherry 948
上一篇: 测试公开课资料系列02--Postman之chai.js断言应用
下一篇: Git使用系列02-->Git介绍&安装
挨踢~小先生
博客等级 码龄13年 4112粉丝 98原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

挨踢~小先生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值