前言
本文从Git为什么被称为分布式控制版本系统引入,介绍了如何创建,克隆远程仓库以及如何向远程仓库推送本地的内容,将远程仓库中的内容拉取到本地。同时还介绍了Git中标签的概念,相信会对大家的日常工作带来帮助。
一、理解分布式版本控制系统
在前面介绍Git的文章中,我们所有的操作都是在本地进行的(可以理解为你的计算机上)。实际上,我们的Git是一个分布式版本控制系统。什么是版本控制系统,相信大家通过前面的文章已经有所了解,这篇文章就来详细说明这个分布式是什么意思。
作为程序开发者,我们每个人都是在自己各自的电脑上进行开发的。因此,Git为我们每个人的计算机都提供了一个完整的版本库,在不联网的状态下也可以进行访问。但是,在实际开发一个项目时,我们通常是多人协作进行的,这就不可避免的要访问到其他人开发的代码,这又该如何实现呢?
可能有人会想到:可以多人使用同一台计算机,一个人开发完毕另一个开发,这样就能访问到其他人开发的代码了。实际上这样做不仅耗时耗力,同时也很不安全和稳定,一旦电脑出现损坏,之前进行的所有开发工作都付诸东流了。
也有人想到,既然是分布式,那么代码可以分布到每个人的电脑中,在开发的过程中将各自修改的内容推送给其他人,这样大家就可以互相看到对方的代码了。并且每个人的电脑中都存放一份代码,即使其中某个人的电脑出现损坏,也可以从其他同事那边拷贝一份。但是,这样做在多人协作的过程中,两个人互相进行代码交换也很耗时耗力。同时,也存在风险,如果你的电脑出现损坏,而你的同事又刚好今天请假,你就无法从他那里拷贝到代码,导致后续工作难以正常进行。
为了解决上述存在的问题,Git作为分布式版本控制系统,提出了一个作为**“中央服务器”**的电脑(24小时,全年无休),它允许我们将自己的代码推送到中央服务器,也可以从中央服务器上拉取其他人推送上去的代码(相当于一个代码中转站)。这样,就可以非常方便的进行代码交换和拷贝,也不用担心本地出故障导致代码全部丢失的问题。我们现在所使用的GitHub/Gitee就是这样的角色。
二、远程仓库
1. 新建远程仓库
因为github平台属于国外的,在国内访问速度较慢,因此,本文主要是以gitee(国内的码云)来进行演示的。
进入gitee官网后,先注册自己的账号:
进入后的界面,右上角点击新建仓库:
填写远程仓库的信息:
最后,再点击“创建”,即可创建成功。
创建好仓库后,我们就进入下面的界面,界面中显示的是我们刚刚新建的仓库
在我们创建好仓库后,也可以对仓库是否开源等信息重新进行设置,点击“管理”就能进入仓库信息管理页面
至此,我们的远程仓库就创建完成,基础设置信息也都配置好了。
2. 克隆远程仓库
注意:不能在任何一个本地仓库目录下克隆远端仓库。担心仓库名冲突的话,可以新建一个目录,然后在目录下克隆远端仓库。
git clone (克隆远程库)
git clone <远程仓库的链接> #克隆/下载远程仓库到本地
远程仓库的链接可以在仓库中找到:点击“克隆/下载”,即可复制远程仓库链接。
SSH协议和HTTPS协议是Git中常用的两种数据传输协议。
其中,SSH协议采用公钥加密和公钥登录机制,具有实用性和安全性。但是,使用该协议需要我们手动将自己本地的公钥配置在远程仓库所在的服务器上,由Git服务器来进行管理。
而使用HTTPS协议可以直接克隆,但是每次推送代码都需要输入我们的密码,具体的内容也可参照gitee给我们的提示信息。
2.1 使用ssh的方式克隆
git clone <远程仓库的链接> #将远程仓库通过SSH协议克隆下来
使用SSH方式克隆远程仓库:
由于我们还未将公钥添加到远端库中,服务器拒绝了我们的clone请求。
因此,我们要先将公钥添加到远端库中。
2.1.1 创建SSH KEY
首先,需要创建SSH KEY:
在用户主目录下,查看是否存在.ssh目录:
如果存在,就去查看该目录下是否存在id_rsa和id_rsa.pub文件。如果这两个文件也存在, 则直接跳到下一步;
如果不存在,则需要手动创建SSH KEY: