六、Git远程仓库操作——创建远程库、推送拉取和克隆远程库等操作

news2024/12/26 20:43:40

1. 远程仓库介绍

前面的关于git的操作,都是基于本地仓库进行操作的。

但是如果我们想通过 Git 分享自己的代码或者与其他开发人员合作,这时我们就需要将数据放到一台其他开发人员能够连接的服务器上,这台服务器就是代码托管中心,或者说是远程仓库

本地和远程仓库的操作大致如下图所示:

我们有两种两种方式搭建代码托管:

  1. 只在局域网中(就是不能访问百度等外网),那么我们可以选择某一台电脑作为服务器,然后使用 Gitlab 来自己搭建一个代码托管中心;
  2. 可以访问外网的情况下(就是可以访问百度、谷歌等网站),那么可以选择 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)]

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)]

3.5 推送(push)本地内容到远程仓库

本地更新的内容推送到远程仓库(本地仓库 ----> 远程仓库),命令格式如下:

git push <远程库地址/别名> <要推送信息的分支(本地)>

1、我们首先在本地仓库做一些改变,比如新增一个test.c文件,然后再本地提交更新。示例如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LNogtJh8-1670249344767)(../picture/image-20221204205523530.png)]

2、本地commit之后,就可以使用push命令推送到远程仓库。

git push gitee_test master

其中,gitee_test是我前面起的远程仓库别名,master是本地仓库的分支名称。

输入上述命令之后,就完成推送了,如下图所示:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eNrPSedu-1670249344768)(../picture/image-20221204205746018.png)]

不过我在推送的时候,微软弹出了如下登录信息:

这个可能是第一次推送出现的现象,反正输入自己gitee的用户名和密码就行了。

推送完成之后,我们到gitee仓库查看是否多了刚刚添加的 test.c 文件。

4. 克隆(clone)远程仓库

上面的方式,是先在我们本地创建一个本地的仓库,然后pull拉取远程仓库内容(同步远程仓库内容到本地),然后再给远程仓库取别名等等,这种方式一步步来也是没有问题的。

但是,我们也可以直接clone一个远程仓库,clone其实也就是把远程仓库的所有内容复制到本地的意思。

命令如下:

git clone <远程仓库url>

直接克隆远程仓库的效果有:

  1. 把远程仓库所以内容直接复制到了本地,这时不用pull(拉取)操作
  2. 初始化了本地仓库,这样我们可以不用 git init 初始化一个本地仓库了
  3. 会给远程仓库起一个别名 origin 。

示例操作

比如,我们把刚刚在gitee上的远程仓库clone到本地,如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QCCLHdSX-1670249344768)(../picture/image-20221204212331403.png)]

然后我们就可以看到本地的目录下多了一个和远程仓库同名的目录,git_test目录。

这时我们使用 git remote -v 命令,可以看到默认给我们把远程仓库取了别名 origin 。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-t5BLDhpL-1670249344768)(../picture/image-20221204212637867.png)]

当我们克隆成功之后,就可以进行拉取、推送,或者查看远程仓库是否更新等操作了,这里和前面先创建本地仓库之后的拉取、推送操作其实已经是一样的。

查看远程仓库是否更新:

git remote show <远程仓库别名/地址>

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-A9lFMXCq-1670249344768)(../picture/image-20221204215412428.png)]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/63894.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

webpack热更新原理解析

热更新原理 1. webpack-dev-server启动本地服务 这里首先会启动webpack并生成compiler实例&#xff08;compiler实例通过各种事件钩子可以实现监听编译无效、编译结束等功能&#xff09;&#xff1b; 然后会通过express启动一个本地服务&#xff0c;用于服务浏览器对打包资源…

前端中的身份认证

一.Cookie 1.1.HTTP协议的无状态性 HTTP协议的无状态&#xff1a; 客户端的每次HTTP请求都是独立的&#xff0c;之间没有直接关系 服务器不会主动保留每次HTTP请求的状态 1.2.任何突破HTTP无状态的限制 发会员卡 注意&#xff1a; ​ 现实中,会员卡身份认证方式&#xff0c;在…

03 - 调试环境的搭建(Bochs)

---- 整理自狄泰软件唐佐林老师课程 1. Bochs&#xff08;另一款优秀的虚拟机软件&#xff09; 专业模拟x86架构的虚拟机 开源且高度可移植&#xff0c;由C编写完成 支持操作系统开发过程中的断点调试 通过简单配置就能运行绝大多数主流的操作系统 2. Bochs的安装与配置 下载…

[附源码]计算机毕业设计社区人员信息管理系统设计与实现Springboot程序

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

HRB系列直流隔离可调电源模块:用20K电位器和200K电位器区别

今天俞霖科技小编简谈如何合理地选用DC-DC模块电源&#xff0c;本文将从DC-DC模块电源开发设计的角度来简谈以上问题&#xff0c;以供广大技术设计人员参考。 DC-DC模块电源的众多优点是大家众所周知的&#xff0c;DC-DC模块电源以其体积小巧、性能卓异、使用方便的显著特点&a…

ArcGIS API For JavaScript(8)之使用动态图层dynamicLayers实现多图层合并截图

场景还原&#xff1a; 定位某个矢量图斑范围面&#xff0c;过滤展示该图斑&#xff0c;以图斑为中心&#xff0c;截图图斑周边并附带影像底图的截图。 在前端要实现地图截图&#xff0c;首先想到的是使用arcgis rest api中的export接口&#xff0c;这是没问题的&#xff0c;exp…

工业物联网关-modbus数据采集程序(1-程序设计)

写代码之前 最近代码写慢了&#xff0c;磨了好久都没开始动手写代码。考虑的东西越多越多&#xff0c;甚至自己都认为过虑了。就像这个程序&#xff0c;写代码之前估计花了大半天或者一天在思考怎么写&#xff0c;不知道是好事还是年纪大了。所以专门写篇文章&#xff0c;把自…

为什么要选择 Redis?

文章目录前言一、选型二、协议三、客户端1、常见 java 客户端2、常见可视化工具&#xff1a;四、Redis 生态1、模块2、代理3、其他前言 Redis&#xff08;Remote Dictionary Server&#xff09;&#xff0c;即「远程字典服务」是一个使用 ANSI C 编写的、开源的、支持网络的、…

【电力系统】基于YALMIP 的微网(光伏+风电+蓄电池+微电网+柴油机)优化调度模型附matlab代码

✅作者简介&#xff1a;热爱科研的Matlab仿真开发者&#xff0c;修心和技术同步精进&#xff0c;matlab项目合作可私信。 &#x1f34e;个人主页&#xff1a;Matlab科研工作室 &#x1f34a;个人信条&#xff1a;格物致知。 更多Matlab仿真内容点击&#x1f447; 智能优化算法 …

Unity—UGUI

每日一句&#xff1a;读数、学习 去更远的地方&#xff0c;才能摆脱那些你不屑一顾的圈子 目录 InputFiled输入框 例&#xff1a;用户名和密码 Toggle组件 案例&#xff1a;冷却效果 InputFiled输入框 Text Component 输入文本组件 Text输入内容 Character Limit 输入字符…

宝塔后渗透-添加用户_反弹shell

更新时间&#xff1a;2022年11月21日 1. 背景介绍 对于想拿到bt后台来说&#xff0c;非常的艰难&#xff1a;无非是通过bypass之后提权&#xff0c;直接拿到服务器的root权限&#xff0c;然后再去宝塔后台。 当然&#xff0c;还有一种运气十分爆棚的方法&#xff1a;发现了b…

Qt的Q_UNUSED()函数的功能

目录Qt Assistant&#xff08;Qt 助手&#xff09;构建场景其他一些平替方法参考Qt Assistant&#xff08;Qt 助手&#xff09; 函数名直译过来是【不用的&#xff1b;从未用过的】。 碰到陌生的函数不要慌&#xff0c;直接Qt Assistant查一哈。 Q_UNUSED(name) Indicates to …

负载均衡器 OpenELB ARP 欺骗技术解析

作者&#xff1a;大飞哥&#xff0c;视源电子运维工程师&#xff0c;KubeSphere 用户委员会广州站站长&#xff0c;KubeSphere Ambassador。 K8S 对集群外暴露服务有三种方式&#xff1a;NodePort&#xff0c;Ingress 和 Loadbalancer。NodePort 用于暴露 TCP 服务(4 层)&#…

基于5G智能网关的水泵远程监控系统方案

方案背景 水泵作为一种常见的水务设备&#xff0c;在日常的生产、生活中发挥重要的作用。为了保证生产、生活用水&#xff0c;也为了预防异常天气带来的过度降水&#xff0c;水泵具备的供水、排水作用都是不可忽视的。然而&#xff0c;很多地区的水泵管理模式依然停留在专人看…

毕业设计-基于机器视觉的手写字识别系统

目录 前言 课题背景和意义 实现技术思路 实现效果图样例 前言 &#x1f4c5;大四是整个大学期间最忙碌的时光,一边要忙着备考或实习为毕业后面临的就业升学做准备,一边要为毕业设计耗费大量精力。近几年各个学校要求的毕设项目越来越难,有不少课题是研究生级别难度的,对本科…

变焦镜头内参数如何获得?

很多时候,我们是使用相应的棋盘格标定进行相机内参数的获取,但是对于相机而言,如果要是焦距范围是测量比较远的物体,那么我们要进行注意相应的内参数就是不能够使用棋盘格标定法进行获取,因为不准. 由于项目的需要,这里我就是需要进行探究一下,如何通过自己调试直接设定内参数…

CSS 实现卡片边框渐变动画

前言 &#x1f44f;CSS实现卡片边框渐变动画&#xff0c;速速来Get吧~ &#x1f947;文末分享源代码。记得点赞关注收藏&#xff01; 1.实现效果 2.实现步骤 父容器添加背景渐变色 <div class"card"></div>.card {background: linear-gradient(0deg, …

Tensorboader图片和模型可视化

非常简单&#xff0c;10分钟搞懂1 Tensorboader介绍2 进行写入和运行&#xff08;共2步&#xff09;3 图像显示3.1 显示图片3.2 显示模型3.3 动态显示学习率等参考文献1 Tensorboader介绍 它就是1个可视化工具&#xff0c;需要用pip进行下载&#xff1b; 下载以后进行显示&a…

SpringCloud框架(三):微服务优化,Feign的最佳实现方案

SpringCloud环境搭建&#xff1a;生产和消费 RestTemplate Spring章节复习已经过去&#xff0c;新的章节SpringCloud开始了&#xff0c;这个章节中将会回顾微服务相关 主要依照以下几个原则 每一个组件的Demo和Coding上传到我的代码仓库在原有基础上加入一些设计模式&#xf…

数据结构与算法之图的应用

一.树之习题选讲-Tree Traversals Again 树习题-TTA.1 题意理解 非递归中序遍历的过程 1. Push的顺序为先序遍历(pre)2. Pop的顺序给出中序遍历(in) 树习题-TTA.2 核心算法 上图分别是先序、中序、后序遍历通过规律我们可以看到他们之间的位置分配 //伪代码 void solve(int …