版本控制基础理论

一、本地版本控制

在本地记录文件每次的更新,可以对每个版本做一个快照,或是记录补丁文件,适合个人使用,如RCS.

二、集中式版本控制(代表SVN)

所有的版本数据都保存在服务器上,协同开发者从服务器上同步更新或者上传自己的修改。

所有的版本都存在服务器上,用户的本地只有自己以前所同步的版本。如果不联网的话,用户就看不到历史版本,也无法切换版本验证问题,或者在不同的分支上工作。而且所有的数据都保存在单一的服务器上,有很大的风险这个服务器会损坏,这样就会丢失所有的数据,当然可以定期备份,代表产品WSVN,CVS,VSS.

三、分布式版本控制(代表Git)

每个人都拥有全部的代码!

所有的版本信息仓库全部同步到本地的每个用户,这样就可以在本地查看所有版本历史,可以离线在本地提交,只需在联网时push到相应的服务器或其他用户那里。由于每个用户那里保存在都是所有的版本数据,只要有一个用户的设备没有问题就可以恢复所有的数据,但这里增加了本地存储的占用。

不会因为服务器损坏造成不能工作的情况。

<font color=red size=>Git目前是世界上最先进的分布式版本管理系统。

四、Git的基本理论

Git本地有三个工作区域:工作目录(working Directory)、暂存区(Stage/Index)、资源库(Repository或Git Directory)。

简单的解释一下相关名词:

Workspace:工作区,就是你平时存放项目代码的地方。

Index/Stage:暂存区,用于临时存放你的改动,事实上他只是一个文件,保存即将提交到文件列表信息

Repository:仓库区(本地仓库),就是安全存放数据的位置,这里面有你提交到所有版本的数据。其中HEAD指向最新放入仓库的版本。

Remote:远程仓库,托管代码的服务器,可以简单的认为是你项目组中的一台电脑用于远程数据交换。

五、Git的工作流程

Git的工作流程一般是这样的:

1、 在工作目录中添加修改文件;

2、将需要进行版本管理的文件放入暂存区域;

3、将暂存区域的文件提交到git本地仓库;

因此,git管理的文件一般有三种状态:已修改(modified)、已暂存(staged)、已提交(committed).

相关推荐
福如意如我心意11 小时前
git清除仓库敏感文件并同步至远端的操作
git
Brilliantwxx14 小时前
【Linux】 开发|Git 版本控制与 gdb/cgdb 调试
linux·笔记·git
.Hypocritical.1 天前
Git 全套实操|配置 /.gitignore/ 分支合并 / 冲突解决 /git stash 完整教程
git
来日方长。。。。long1 天前
Hermes Agent橙皮书共读|第三篇:保姆级实战部署|本地/VPS从零搭建Hermes
ide·git·hermes
其实防守也摸鱼2 天前
VS Code Git 工作树:解锁多分支并行开发新体验
数据库·git·安全·oracle·架构·自动化
ERD Online2 天前
我们怎么设计 good first issue:让第一个 PR 两小时内合入
数据库·git·后端·开源·issue
Python私教2 天前
Codex 自动写 Commit 够安全吗?一套证据化 Git 提交流程
人工智能·git·后端
果果燕2 天前
实习笔记(一):NFS、Samba、VNC、Git、CMake、systemd、内核、交叉编译
linux·arm开发·c++·笔记·git
美味蛋炒饭.2 天前
Git 版本控制(下)
开发语言·git·学习·总结·后端开发
互联网中的一颗神经元2 天前
09 — .git 地图:打开那个隐藏文件夹
大数据·git·elasticsearch