进公司毕竟是多人协作的事情,不是你一个人在更改代码,所以必须要会代码管理工具来多人管理代码。(如果一个人干所有人的活当我没说)
作为2023年代码管理工作最为出名的分布式那肯定还是Git。
当然也有其他的,比如SVN等等。
这篇主要讲解的是Git的使用。
用于管理多人协同开发项目的技术。
版本控制最主要的功能就是追踪文件的变更。
它将什么时候、什么人更改了文件的什么内容等信息忠实地了记录下来。每一次文件的改变,文件的版本号都将增加。
除了记录版本变更外,版本控制的另一个重要功能是并行开发。
软件开发往往是多人协同作业,版本控制可以有效地解决版本的同步以及不同开发者之间的开发通信问题,提高协同开发的效率。
并行开发中最常见的不同版本软件的Bug修正也可以通过版本控制中分支与合并的方法有效地解决。
常用的版本控制工具就是Git和SVN。
SVN
:集中式版本控制,所有的版本数据都在服务器上,协同开发者从服务器上同步更新或上传自己的修改。
集中式版本控制系统,版本库是集中放在中央服务器的,而工作的时候,用的都是自己的电脑,所以首先要从中央服务器得到最新的版本,然后工作,完成工作后,需要把自己做完的活推送到中央服务器。
集中式版本控制系统是必须联网才能工作,对网络带宽要求较高。
好处:
坏处:
Git
:分布式版本控制,所有版本信息仓库全部同步到本地的每个用户,这样就可以在本地查看所有的版本历史,可以离现在本地提交,只需在联网的时候push到相应服务器或者其他用户那里。每个用户保存的都是所有的版本数据,只要有一个用户的设备没问题就可以恢复所有的数据,增加了本地存储空间的压力。
分布式版本控制系统,没有中央服务器,每个人的电脑就是一个完整的版本库,工作的时候不需要联网了,因为版本都在自己电脑上。
协同的方法是这样的:比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。
好处:
坏处:
是的,创建分支时会从当前所在的分支(通常是主分支或其他已存在的分支)复制一份,并将其作为新的分支。这样就可以在新的分支上进行修改和提交操作,而不影响到原有的源分支以及其他已存在的分支。
需要注意的是,分支并不是一个独立的代码仓库,而是在同一个代码仓库中管理不同版本的代码。因此,在切换到不同分支时,会切换到对应版本下的代码。
当我们在一个特定的分支上开发程序时,我们可以安心地进行修改和提交操作,因为只有当前所在的分支受到影响。
Git命令:
ssh-keygen
选项:
-t [加密算法类型] (比如rsa)
当我敲ssh-keygen -t rsa
后,会生成下面2个文件。
疑问:为什么Git远程仓库要配置公钥和私钥呢?
Git远程仓库需要配置公钥和私钥是为了实现安全的身份认证和数据传输加密。
Git 采用 SSH 协议进行远程连接,而 SSH(Secure Shell)是一种加密网络协议。在 Git 远程连接中,公钥和私钥是 SSH 认证方式下的一种身份验证机制。
在 Git 中,私钥存放在本地电脑上,公钥存放在 Git 远程仓库服务器上。当你通过 SSH 连接到远程仓库时,Git 会使用你本地电脑上的私钥进行身份认证,并与远程仓库建立起安全的通信渠道。
通过这种方式,Git 可以确保只有授权用户才能访问和操作远程仓库,防止非授权用户篡改或窃取代码。
因此,在配置 Git 远程连接时设置公钥和私钥是非常重要的,可以有效保护你的代码安全。
打开你想存放的本地文件夹地址,右键打开Git Bash ,敲入git clone URL
,把对于的URL替换即可连接成功到本地文件夹。
方法一:创建本地项目的时候,把项目位置放到git目录下!
方法二:将远程的Git文件目录拷贝到项目中即可!
此时此刻项目就已经集成了Git,可以在IDE中拉取远程,也可以Commit,但是需要git add .
添加到暂存区,才看得到Commit框中我们代码中的所有文件(需要添加什么文件到暂存区就add 后面的.替换成什么文件,.
代表所有文件),Commit成功即可添加到本地库。
以上都是个人版的开发操作,就是不属于公司并行开发的模式!!
公司并行开发的话,我们公司用了差异化管理,但是一般公司开发都用Git分支。
这里就不say了,基本使用就这样,想去了解分支等等用法自己去了解。
看完已经可以让小白对Git的认知提高一层了。