【Git】版本控制之基础用法

简介: 进公司毕竟是多人协作的事情,不是你一个人在更改代码,所以必须要会代码管理工具来多人管理代码。(如果一个人干所有人的活当我没说)作为2023年代码管理工作最为出名的分布式那肯定还是Git。当然也有其他的,比如SVN等等。这篇主要讲解的是Git的使用。

前言


进公司毕竟是多人协作的事情,不是你一个人在更改代码,所以必须要会代码管理工具来多人管理代码。(如果一个人干所有人的活当我没说)

作为2023年代码管理工作最为出名的分布式那肯定还是Git。

当然也有其他的,比如SVN等等。

这篇主要讲解的是Git的使用。



一、版本控制是什么


用于管理多人协同开发项目的技术。

版本控制最主要的功能就是追踪文件的变更

它将什么时候、什么人更改了文件的什么内容等信息忠实地了记录下来。每一次文件的改变,文件的版本号都将增加。

除了记录版本变更外,版本控制的另一个重要功能是并行开发

软件开发往往是多人协同作业,版本控制可以有效地解决版本的同步以及不同开发者之间的开发通信问题,提高协同开发的效率。

并行开发中最常见的不同版本软件的Bug修正也可以通过版本控制中分支与合并的方法有效地解决。

常用的版本控制工具就是Git和SVN。


二、Git和SVN的区别


SVN集中式版本控制,所有的版本数据都在服务器上,协同开发者从服务器上同步更新或上传自己的修改。

集中式版本控制系统,版本库是集中放在中央服务器的,而工作的时候,用的都是自己的电脑,所以首先要从中央服务器得到最新的版本,然后工作,完成工作后,需要把自己做完的活推送到中央服务器。

集中式版本控制系统是必须联网才能工作,对网络带宽要求较高。

好处:

● 每个人拥有部分代码,安全隐患低

坏处:

本地只有同步的版本,其他版本要下载才能切换

所有数据都在单一的服务器上,只能定期备份。

必须联网



Git分布式版本控制,所有版本信息仓库全部同步到本地的每个用户,这样就可以在本地查看所有的版本历史,可以离现在本地提交,只需在联网的时候push到相应服务器或者其他用户那里。每个用户保存的都是所有的版本数据,只要有一个用户的设备没问题就可以恢复所有的数据,增加了本地存储空间的压力。

分布式版本控制系统,没有中央服务器,每个人的电脑就是一个完整的版本库,工作的时候不需要联网了,因为版本都在自己电脑上。

协同的方法是这样的:比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。

好处:

没有网络也能工作


恢复备份数据容易


可以直接看到更新了哪些代码和文件


坏处:

每个人都有全部代码,不安全


增加了本地存储空间的压力


1d2d9f353181431cb06bb00c60558360.png


疑问


1)git创建分支的时候是从当前的分支复制一份并创建吗?


是的,创建分支时会从当前所在的分支(通常是主分支或其他已存在的分支)复制一份,并将其作为新的分支。这样就可以在新的分支上进行修改和提交操作,而不影响到原有的源分支以及其他已存在的分支。

需要注意的是,分支并不是一个独立的代码仓库,而是在同一个代码仓库中管理不同版本的代码。因此,在切换到不同分支时,会切换到对应版本下的代码。

当我们在一个特定的分支上开发程序时,我们可以安心地进行修改和提交操作,因为只有当前所在的分支受到影响。

2)本地项目上传到远程仓库的步骤


1. 获取公钥


Git命令

ssh-keygen

选项:

-t [加密算法类型] (比如rsa)

当我敲ssh-keygen -t rsa后,会生成下面2个文件。


3967fb856a32420c934fb93de0fc917a.png


6f570b9047cb461ca2f4ae8c0f2ecbfb.png


打开.pub公钥后,复制粘贴即可。

08aa229de5e34bf3933545e7dbb1e4b7.png


疑问:为什么Git远程仓库要配置公钥和私钥呢?


Git远程仓库需要配置公钥和私钥是为了实现安全的身份认证和数据传输加密。

Git 采用 SSH 协议进行远程连接,而 SSH(Secure Shell)是一种加密网络协议。在 Git 远程连接中,公钥和私钥是 SSH 认证方式下的一种身份验证机制。

在 Git 中,私钥存放在本地电脑上公钥存放在 Git 远程仓库服务器上。当你通过 SSH 连接到远程仓库时,Git 会使用你本地电脑上的私钥进行身份认证,并与远程仓库建立起安全的通信渠道。

通过这种方式,Git 可以确保只有授权用户才能访问和操作远程仓库,防止非授权用户篡改或窃取代码。

因此,在配置 Git 远程连接时设置公钥和私钥是非常重要的,可以有效保护你的代码安全。

2. 登录远程仓库并创建项目

282d8e88e2c242149dd326feb79a48d0.png


3. 获取远程仓库地址URL

64bd16dc2eab4144a30f236009b25226.png


4. 克隆空项目到本地Git


打开你想存放的本地文件夹地址,右键打开Git Bash ,敲入git clone URL,把对于的URL替换即可连接成功到本地文件夹。


5. 本地项目上传到远程仓库


方法一:创建本地项目的时候,把项目位置放到git目录下!

方法二:将远程的Git文件目录拷贝到项目中即可!


3)IDE中的操作


此时此刻项目就已经集成了Git,可以在IDE中拉取远程,也可以Commit,但是需要git add .添加到暂存区,才看得到Commit框中我们代码中的所有文件(需要添加什么文件到暂存区就add 后面的.替换成什么文件,.代表所有文件),Commit成功即可添加到本地库。

以上都是个人版的开发操作,就是不属于公司并行开发的模式!!


公司并行开发的话,我们公司用了差异化管理,但是一般公司开发都用Git分支。

这里就不say了,基本使用就这样,想去了解分支等等用法自己去了解。

看完已经可以让小白对Git的认知提高一层了。


目录
相关文章
|
5天前
|
人工智能 数据可视化 开发工具
Git log 进阶用法(含格式化、以及数据过滤)
Git log 进阶用法(含格式化、以及数据过滤)
|
28天前
|
开发工具 git 开发者
Git常用命令大全:让你轻松驾驭版本控制
Git命令速查:`git init`新建仓库,`git clone`克隆,`git add`入暂存区,`git commit -m`提交,`git status`查看状态,`git log`查看历史,`git branch`创建分支,`git checkout`切换,`git merge`合并,`git pull`拉取更新,`git push`推送,`git remote -v`查看远程,`git checkout --`撤销本地修改,`git reset HEAD`取消暂存,`git reset --hard`回退版本。掌握这些,提升代码管理效率!
19 0
|
4月前
|
存储 前端开发 开发工具
前端开发中的Git版本控制:构建可靠的协作和代码管理
前端开发中的Git版本控制:构建可靠的协作和代码管理
49 0
|
4月前
|
NoSQL Linux 开发工具
【深入解析git和gdb:版本控制与调试利器的终极指南】(下)
【深入解析git和gdb:版本控制与调试利器的终极指南】
|
开发工具 git
Git版本控制——分支
几乎所有的版本控制系统都以某种形式支持分支。使用分支意味着可以把工作从开发主线上分离开来进行重大的Bug修改、开发新的功能,以免影响开发主线。
32 0
|
4月前
|
安全 开发工具 git
三分钟学完Git版本控制常用指令
Git本地有三个工作区域:工作目录(Working Directory)、暂存区(Stage/Index)、资源库(Repository或Git Directory)。如果在加上远程的git仓库(Remote Directory)就可以分为四个工作区域。文件在这四个区域之间的转换关系如下:
30 0
三分钟学完Git版本控制常用指令
|
4月前
|
Linux 开发工具 数据安全/隐私保护
分布式版本控制git
分布式版本控制git
|
5月前
|
存储 开发工具 git
Git的正确使用姿势与最佳事件:团队协作开发和版本控制的最佳实践
Git 是目前最流行的分布式版本控制系统之一,它提供了强大而灵活的工具来管理项目的版本和协作开发。无论您是个人开发者还是团队成员,掌握 Git 的使用方法都是必不可少的。本文将引导您从 Git 的基础知识开始,逐步探索 Git 的进阶功能。
|
5天前
|
存储 项目管理 开发工具
Git 版本控制:构建高效协作和开发流程的最佳实践
版本控制是软件开发的核心,促进团队协作与项目管理。通过制定明确的分支命名策略,遵循一致的代码提交规范,如指明提交类型和简短描述,增强了历史记录的可读性,可以清晰地组织和理解项目的结构与进展。
11 0
Git 版本控制:构建高效协作和开发流程的最佳实践
|
2月前
|
开发工具 git
Git版本控制工具详解(三)
Git版本控制工具详解
35 0

相关实验场景

更多