1. 远程仓库介绍
前面的关于git的操作,都是基于本地仓库进行操作的。
但是如果我们想通过 Git 分享自己的代码或者与其他开发人员合作,这时我们就需要将数据放到一台其他开发人员能够连接的服务器上,这台服务器就是代码托管中心,或者说是远程仓库。
本地和远程仓库的操作大致如下图所示:

我们有两种两种方式搭建代码托管:
- 只在局域网中(就是不能访问百度等外网),那么我们可以选择某一台电脑作为服务器,然后使用 Gitlab 来自己搭建一个代码托管中心;
- 可以访问外网的情况下(就是可以访问百度、谷歌等网站),那么可以选择 gitee 、 github 等第三方的代码托管中心。
2. github和gitee简介
2.1 github
github是一个基于git的代码托管平台,付费用户可以建私人仓库,我们一般的免费用户只能使用公共仓库,也就是代码要公开。github就是一个典型的第三方代码托管平台。
Github 由Chris Wanstrath, PJ Hyett 与Tom Preston-Werner三位开发者在2008年4月创办。
今天,GitHub已是:
- 一个拥有143万开发者的社区。其中不乏Linux发明者Torvalds这样的顶级黑客,以及Rails创始人DHH这样的年轻极客。
- 这个星球上最流行的开源托管服务。目前已托管431万git项目,不仅越来越多知名开源项目迁入GitHub,比如Ruby on Rails、jQuery、Ruby、Erlang/OTP;近三年流行的开源库往往在GitHub首发,例如:BootStrap、Node.js、CoffeScript等。
- alexa全球排名414的网站。
github官网:
https://github.com/
首次打开github官网时,会默认打开注册页面,然后我们直接使用邮箱注册就好,注册完之后就可以创建远程仓库等操作了。
2.2 gitee
gitee(码云)是开源中国社区推出的代码托管协作开发平台,支持Git和SVN,提供免费的私有仓库托管。
其作用和github差不多,都是第三方代码托管平台。
gitee官网:
https://gitee.com/
3. 本地仓库和gitee远程仓库协作
这里以gitee作为远程仓库,和本地git进行协作。
3.1 在本地新建一个git仓库
先在本地任何一个目录下,创建一个本地的git仓库:

3.2 创建远程仓库
1、在gitee网站首页,左侧可以点击创建仓库。

2、填写远程仓库的基本信息:

3、远程仓库创建成功:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JVaSDTiA-1670249344766)(../picture/image-20221204163035913.png)]](https://img-blog.csdnimg.cn/c8f3fa07d1ed417ca1e315c7cac6fcbc.png)
3.3 给远程仓库取别名
创建完远程仓库之后,就会有对应的远程仓库地址,而且gitee支持多种协议,比如 https、ssh 等。

我们对远程仓库的操作,比如拉取远程仓库代码,推送本地代码到远程仓库,我们都可以使用刚刚创建的仓库对应的地址进行操作。
但是如果操作该仓库很频繁,每次操作远程仓库都要带上对应的地址很麻烦,所以我们可以给这个仓库取一个别名。
命令如下:
git remote add <别名> <远程库地址>
比如,刚刚创建的远程仓库,我取个别名叫 “gitee_test”,到时候对这个远程仓库的操作就可以直接使用这个别名替代了。
操作如下:

取了别名之后,我们可以使用下面命令查看本地仓库配置了多少远程仓库:
 git remote -v
3.4 拉取(pull)远程仓库
本地仓库拉取远程仓库的内容(本地仓库 <---- 远程仓库),就是同步远程仓库内容到本地仓库,命令如下:
git pull <远程库地址名> <远程分支名称>
其中,远程仓库地址,可以使用刚刚设置得别名。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-C3Z2UKES-1670249344767)(../picture/image-20221204204224802.png)]](https://img-blog.csdnimg.cn/80137b01ce3346babf38a6d2eb4d02de.png)
3.5 推送(push)本地内容到远程仓库
本地更新的内容推送到远程仓库(本地仓库 ----> 远程仓库),命令格式如下:
git push <远程库地址/别名> <要推送信息的分支(本地)>
1、我们首先在本地仓库做一些改变,比如新增一个test.c文件,然后再本地提交更新。示例如下:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LNogtJh8-1670249344767)(../picture/image-20221204205523530.png)]](https://img-blog.csdnimg.cn/a503ff4d32184312a8691ff38fc8f4f7.png)
2、本地commit之后,就可以使用push命令推送到远程仓库。
git push gitee_test master
其中,gitee_test是我前面起的远程仓库别名,master是本地仓库的分支名称。
输入上述命令之后,就完成推送了,如下图所示:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eNrPSedu-1670249344768)(../picture/image-20221204205746018.png)]](https://img-blog.csdnimg.cn/3e1daee39b3349e5930b31d13c629dbb.png)
不过我在推送的时候,微软弹出了如下登录信息:

这个可能是第一次推送出现的现象,反正输入自己gitee的用户名和密码就行了。
推送完成之后,我们到gitee仓库查看是否多了刚刚添加的 test.c 文件。

4. 克隆(clone)远程仓库
上面的方式,是先在我们本地创建一个本地的仓库,然后pull拉取远程仓库内容(同步远程仓库内容到本地),然后再给远程仓库取别名等等,这种方式一步步来也是没有问题的。
但是,我们也可以直接clone一个远程仓库,clone其实也就是把远程仓库的所有内容复制到本地的意思。
命令如下:
git clone <远程仓库url>
直接克隆远程仓库的效果有:
- 把远程仓库所以内容直接复制到了本地,这时不用pull(拉取)操作
- 初始化了本地仓库,这样我们可以不用 git init 初始化一个本地仓库了
- 会给远程仓库起一个别名 origin 。
示例操作:
比如,我们把刚刚在gitee上的远程仓库clone到本地,如下:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QCCLHdSX-1670249344768)(../picture/image-20221204212331403.png)]](https://img-blog.csdnimg.cn/19384956f2a0451488846b8526bbfa25.png)
然后我们就可以看到本地的目录下多了一个和远程仓库同名的目录,git_test目录。
这时我们使用 git remote -v 命令,可以看到默认给我们把远程仓库取了别名 origin 。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-t5BLDhpL-1670249344768)(../picture/image-20221204212637867.png)]](https://img-blog.csdnimg.cn/2dd63ede82074b3b9f9c877ea7c773c7.png)
当我们克隆成功之后,就可以进行拉取、推送,或者查看远程仓库是否更新等操作了,这里和前面先创建本地仓库之后的拉取、推送操作其实已经是一样的。
查看远程仓库是否更新:
git remote show <远程仓库别名/地址>
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-A9lFMXCq-1670249344768)(../picture/image-20221204215412428.png)]](https://img-blog.csdnimg.cn/196adbfab0b448998cf63375b172ec3f.png)



![[附源码]计算机毕业设计社区人员信息管理系统设计与实现Springboot程序](https://img-blog.csdnimg.cn/b32a7c5033484f538a5aa2d4cd94c899.png)















