Git学习-1 Git概述
1.概述
版本控制系统是一种记录一个或若干个文件内容变化,一遍将来查阅特定版本修订的系统;不仅可以应用于软件代码,而且可以对任何类型的文件进行版本控制。
目前使用比较多的是svn和git
2.版本系统的工作模式
分为两种:
1>集中式工作模式:
为了让不同系统上的开发者能够协同工作,集中化的版本控制系统就应运而生,这类系统都有一个单一的集中管理的服务器,保存所有的修订版本,协同工作的人们都要通过客户端连接到这台服务,获取最新的版本。
也就是有一个中央版本库服务器,所有的客户机需要提交到这里。
存在的问题:
(1)一旦服务器出现问题,所有的客户机无法更新到最新版本,并且无法恢复到指定的版本,因为所有版本信息都在中央版本库中。
(2)必须具有网路环境,单机五大实现版本控制
(3)客户机之间无法直接进行联系,无论中央版本服务器是否出现问题例如CVS,SVN
2>分布式工作模式:
分布式版本控制系统中无需中央版本库服务器,每台客户机都具有独立的版本控制功能,多台客户机之间相连就可以实现文件共享及版本管理
分布式工作模式的好处:无需网络环境也可以进行版本控制,在网络环境下可以实现协同工作。例如Git;
3.Git工作模式
git工作模式包含:集中式工作模式,开源社区工作
1>集中式工作模式:
git为了便于客户机之间协同工作,Git版本控制系统一般会设置一个中央版本库服务器,目的是让所有客户机都从该主机更新版本,提交最新版本,该工作模式下的客户机地位都平等;
此种模式下客户机平等的,连接不上中央版本库服务器,同样可以提交
2>开源社区工作模式
对于开源软件开源社区的工作发展模式,不可能让所有人都具有修改中央版本库的权限,让不同的客户机对中央版本库的不同操作权限,将有利于维护开源软件的安全性。
提交的代码是分级提交的
4.Git工作流程
1>初始化一个本地版本库,每个版本库仅需要执行一次
2>将中央版本库内容克隆到本地版本库,每个客户机仅需要执行一次
3>添加指定文件到版本控制管理(只是添加到暂存区)
4>将修改操作操作到本地版本库(将暂存区的内容提交到本地版本库)
5>将本地版本库中的修改内容"输送"到中央版本库,客户机需要在一阶段性工作完成之后或在某些时间点(下班,周五)将修改过的内容备份到中央版本库,方便他人更新到最新的代码
6>将中央版本库中的变化内容"拉取"本地版本库,客户机需要不时的更新才可以获取最新的内容
5.工作区与版本库
Git存在两个特别重要的区域:工作区与版本库,版本库又存在两个很重要的区域,暂存区与分支区。
add 到暂存区
工作区:存放着用户可编辑的文件本身
暂存区:也称为stage或index,存放着对文件的快照
分支区:该区域中可以包含很多分支,而每个分支都可以记录当前工作区中文件的状态快照
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理