git 简介

本文深入浅出地介绍了版本控制的基本概念,包括版本控制的意义、版本控制系统的类型(集中式与分布式),以及Git作为典型分布式版本控制系统的具体工作流程,帮助读者理解如何有效管理代码变更。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 什么是版本控制?

现在有这样的一个场景:我们在写论文的时候,写完了提交给指导老师去审核,老师说写的不好要改论文,于是你就去改论文。一般的做法:不会在原论文上修改,而是复制一份,在新复制的那一份上做改动。因为如果改了论文,被老师评价说还不如上一次,让你重该,你还可以找到上一次的论文,但是如果不复制,直接在原来的论文上改动…
 

原论文是一个版本,新复制的论文又是一个新的版本。简单点说,我们复制原论文,产生新论文的这个过程就加版本控制。只不过这个版本控制是我们手动完成的。

  • 什么是版本控制系统?

版本控制系统就是自动的帮我们完成上面操作的系统或者说就是一个应用程序

版本控制系统如何帮我们控制版本?
我们需要进行版本控制的文件都要提交代码仓库(其实就是一个隐藏文件夹)里面,我们对文件做出的修改都会被这个版本控制系统侦测到,如果我们要保留这个版本的文件,就要通过版本控制系统提供的命令把文件提交到仓库里面,然后版本控制系统就会自动为我们提交的文件打上版本号。(idea 在代码行数上面右击出现annotate点击后就会出现代码的提交者)

  • 仓库分几种?

本地仓库:建立在本地的文件夹。
远程仓库:建立在互联网的服务器内的文件夹。
版本控制系统分为几种?
分布式版本控制系统

配有上述两个仓库,在你的电脑上有一个本地仓库,在远程的服务器上有一个远程仓库。
我们在提交文件的时候会先提交到本地仓库,然后在有网络的情况下,再从本地仓库提交到网络上的远程仓库。
Git 就是一个典型的分布式版本控制系统

 

  • 集中式版本控制系统

只配有上述的远程仓库,当然如果你的这台电脑就充当远程服务器的角色,那远程仓库其实就在你这台电脑上。
我们在提交文件的时候是直接提交到远程仓库。
SVN 就是一个典型的集中式版本控制系统

  • 工作区和暂存区

Git和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念。

工作区就是你在电脑里能看到的目录,比如我的testgit文件夹就是一个工作区。

工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。

Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向 master的一个指针叫HEAD。

前面讲了我们把文件往 Git 版本库里添加的时候,是分两步执行的:

第一步是用git add把文件添加进去,实际上就是把文件修改添加到暂存区;

第二步是用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支。

因为我们创建Git版本库时,Git自动为我们创建了唯一一个master分支,所以现在git commit就是往master分支上提交更改。

你可以简单理解为,git add命令实际上就是把要提交的所有修改放到暂存区(Stage),然后执行git commit就可以一次性把暂存区的所有修改提交到分支。

一旦提交后,如果你又没有对工作区做任何修改,那么工作区就是“干净”的。

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值