首页 > 其他分享 >笔记一:git简介

笔记一:git简介

时间:2023-03-11 19:33:14浏览次数:45  
标签:版本控制 简介 代码 笔记 git 版本 服务器 客户端

一:学习内容

  • git是什么
  • git版本控制(重点:分布式版本控制工具 VS 集中式版本控制工具)
  • git工作机制
  • git和代码托管中心

 

二:git是什么

git是一个免费的、开源的分布式版本控制系统,可以高效快速地处理从小型到大型的各种项目。

git易学习,占用空间小,性能极快。有廉价的本地库,方便的暂存区域和多个工作流分支等特性。性能优于subversion、CVS、perforce和clearcase等版本控制工具。

 

三:git版本控制

版本控制是一种记录文件内容变化,以便将来查阅特定版本修订情况的系统。

版本控制最重要的是记录文件修改历史记录,从而让用户能够查看历史版本,方便版本切换。

版本控制的目的是为了从个人开发过渡到团队协作。

 

  1. 集中式版本控制工具:CVS、SVN、VSS

集中式版本控制工具,都有一个单一的集中管理的服务器,保存所有文件的修订版本,而协同工作的人们通过客户端连到这台服务器,取出最新的文件或提交更新。这已成为版本控制系统的标准做法。

在服务器上管理v1、v2、v3版本。

 

好处:每个人都可用在一定程度上看到项目中的其他人正在做些什么。而管理员也可以轻松掌控每个开发者的权限,并且管理一个集中化的版本控制系统,要远比在各个客户端上维护本地数据库来得轻松容易

弊端:如果中央服务器出现单点故障,比如服务器宕机1小时,那么在这1小时内,谁都无法提交更新,也就无法协同工作

 

  2.分布式版本控制工具:Git、Mercurial、Bazaar、Darcs

分布式版本控制工具,客户端提取的不是最新版本的文件快照,而是把代码仓库完整地镜像下来(本地库)。这样任何一处协同工作用的文件发生故障,事后都可以用其他客户端的本地仓库进行恢复。因为每个客户端的每一次文件提取操作,实际上都是一次对整个文件仓库的完整备份。

好处:解决了集中式版本控制系统的缺陷
  1>服务器断网的情况下也可以进行开发,因为版块控制是在本地进行的;
  2>每个客户端保存的也都是整个完整的项目,包含历史记录,更加安全。

 

四:git工作机制

  1. 工作区:存放代码的磁盘的目录位置
  2. 暂存区:将工作区的代码添加到暂存区
  3. 本地库:将暂存区的代码提交本地库,会生成一个历史版本
  4. 远程库:代码托管中心

 

五:git代码托管中心

代码托管中心是基于网络服务器的远程代码仓库,即远程库。

  1. 局域网代码托管中心:GitLab
  2. 互联网代码托管中心:Github(外网)、Gitee码云(国内网站)

标签:版本控制,简介,代码,笔记,git,版本,服务器,客户端
From: https://www.cnblogs.com/miaomiaokaixin/p/17206773.html

相关文章

  • 【Git】git常用命令集合
    目录​​最常用的git命令​​​​git拉取代码​​​​git本地如何合并分支​​​​上传文件识别大小写​​​​开发分支(dev)上的代码达到上线的标准后,要合并到master分支​​......
  • web测试+测试工具+用例 笔记
    测试工具:傅立叶:管理UI自动化平台,管理用例结构,其中包含用例的路径结构:产品-模块-场景菲尔兹:管理用例计划主干用例和冒烟用例区分:主干:整个项目比较重要的用例。主干......
  • Python 决定迁移到 GitHub
    Python已经决定迁移到GitHub,虽然有人公开说反对迁移到GitHub,但还是有很多人会在一定程度上使用GitHub,而且几位核心的开发者也倾向于选择GitHub。Python在很久之前为了......
  • Gin学习笔记--使用路由组分类处理请求
    在实际的项目开发中,均是模块化开发,同一模块化的功能接口,往往会有相同的接口前缀,比如说用户有不同的注册,登录等注册:http:..localhost:8080/user/register登录:http://loca......
  • MySQL学习笔记-SQL实践1
    SQL实践1借着学校的数据库实验,来对之前学习的SQL语言进行实践和总结。实验环境:macOS13.2(22D49)mysqlVer8.0.32formacos13.0onarm64(Homebrew)DataGrip20......
  • 构建之法 读书笔记(1)
    邹欣老师在这本构建之法中形象生动的描述了软件工程人员在工作中的点点滴滴。他提出软件工程是把系统的、有序的、可量化的方法应用到软件的开发、运营和维护上的过程。确......
  • gitcode_上传代码成功之后的一些命令
    gitcode上传代码之后的一些命令Gitglobalsetupgitconfig--globaluser.name"小怪兽"gitconfig--globaluser.email"[email protected]"Createanewreposito......
  • 对象、数组、字符串的一些方法(笔记)
    对象字符串方法数组方法 ......
  • 数据结构学习笔记-day2
    Day2一、算法和算法分析算法特性:有穷性、确定性、可行性、输入、输出。2.算法的时间复杂度:(影响算法时间代价的最主要因素是问题规模)               ......
  • git 仓库迁移
    git仓库迁移场景1:git仓库无lfs仓库地址旧仓库地址http://gitee.com/original/git_repository.git目标仓库地址http://gitee.com/target/git_repository.......