Git本地仓库管理远程库(GitHub)——clone(下载)、commit(添加到本地仓库)、push(提交到远程仓库)、pull(拉取)操作

目录

  • 使用远程仓库的目的
  • 将本地仓库同步到git远程仓库
    • 1.克隆远程仓库(clone)
    • 2.新建一个文件
    • 3.将工作区的文件添加到暂存区
    • 4.将暂存区的文件添加到本地仓库(commit)
    • 5.提交(同步)到远程仓库(push)
    • 6.远程库拉取到本地库(pull)
    • 7.团队协作开发和跨团队协作开发(开源项目)

使用远程仓库的目的

作用:备份,实现代码共享集成化管理
在这里插入图片描述

将本地仓库同步到git远程仓库

在这里插入图片描述

1.克隆远程仓库(clone)

1.目的

将远程仓库(GitHub对应的项目)下载到本地

2.复制


git  clone  仓库地址

仓库地址获取(这里我下载OpenCV):
在这里插入图片描述
在这里插入图片描述
速度还挺快的哈,每秒4M多呢!以后可以用这种方法下载文件了。

我再下载自己的仓库
在这里插入图片描述

在这里插入图片描述
这里我下载了好几次才成功。

2.新建一个文件

在这里插入图片描述

3.将工作区的文件添加到暂存区

git  add  hello.c 

在这里插入图片描述

4.将暂存区的文件添加到本地仓库(commit)


git  commit  -m  "提交描述"

在这里插入图片描述

5.提交(同步)到远程仓库(push)

git push 

在这里插入图片描述
添加成功

如果提示:The requested URL returned error: 403 Forbidden while accessing等
答案:私有项目,没有权限,输入用户名密码,或者远程地址采用这种类型
vi .git/config
将url => https://github.com/用户名/仓库名.git
修改为: url => https://用户名:密码@github.com/用户名/仓库名.git

6.远程库拉取到本地库(pull)

这部分摘自这篇博文:https://xiongyiming.blog.csdn.net/article/details/106153902

远程库拉取(pull)到本地库命令格式为: git pull origin master ,origin为远程库地址的别名。

将远程库文件更新到本地库,本地工作区文件将会更新,如果本地有和远程库同名的文件,将会强制更新本地库文件。

例如新建test_pull文件,新建123.txt文件,然后提交到本地库,如下图所示:

在这里插入图片描述


将远程库地址更改别名(git remote add origin 远程库地址),然后执行命令:git pull origin master

在这里插入图片描述


此时发现,pull失败,因为本地库有和远程库不相同的文件,此时可以通过命令:git pull origin master --allow-unrelated-histories 强制拉取(pull)

在这里插入图片描述


下面将本地库文件全部推送到远程库,命令为:git push origin master ,结果如下图所示

在这里插入图片描述


此时刷新网页,查看GitHub仓库中123.txt文件成功的从本地库提交到远程库,如下图所示:

在这里插入图片描述


假设在GitHub仓库中更改文件内容,此时本地库内容没有变,现在然后从将远程库拉取(pull)到本地库,看看会不会强制更新本地库文件内容。

在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


由上图可以看出,远程库123.txt文件被修改,此时将远程库拉取到本地库,执行命令:git pull origin master ,结果如下图所示,本地库123.txt文件被更新了。

在这里插入图片描述


当然也可以通过命令: git fetch origin master 将远程库文件抓取到本地库缓存区,此时本地库和工作区文件并没有被合并,
通过命令:git checkout origin/master 切换到本地库缓存的分支上,然后通过命令: cat 文件名 来查看文件内容

接下来可以将缓存区分支文件和本地库文件进行合并,通过命令:git checkout master切换到本地库分支上,然后再将缓存区的分支合并到本地库:命令为:git merge origin/master

注: pull操作相当于 fetch + merge 操作。关于git pull命令和git fetch命令的区别可以参见博客

  1. git fetch和git pull之间的区别
  2. git pull 和 git fetch的区别?



7.团队协作开发和跨团队协作开发(开源项目)

团队协作开发和跨团队协作开发(开源项目)可以参考之前的博客:GitHub协作开发项目

其实重点是远程仓库和本地仓库之间的推送(push)操作和拉取(pull)操作,因为在这个过程中可能出现远程库文件和本地库文件不相同,这是需要自己去判断。具体的问题在实际操作中可能会遇到,等遇到了这些问题在更新自己的笔记。

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

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

相关文章

ps里面怎么插入流程图_学会这3个方法,5分钟能绘制出好看又高级的流程图

工作中,很多时候我们需要绘制流程图,有些小伙伴觉得流程图很难画,费时又耗力。那么今天小编就来给大家分享3种绘制流程图的方法,希望大家学会后,都能快速画出好看的流程图。下面就一起来看看吧~一、Excel绘制1.打开Sma…

2018-2019-1 20165202 20165210 20165214 实验一 开发环境的熟悉

博客链接 转载于:https://www.cnblogs.com/zhuwenyuan/p/9827427.html

oracle学习一二

最近在从事一个行业的测评项目,作为测评师来讲应当是正确的分工,有人负责网络安全测评,有人负责主机测评,有人负责管理测评等等。在测评一个oracle数据库的时候学习到了一点内容,在专业人士看来可能不足为奇&#xff0…

Github Pages 搭建个人网站

目录个人站点访问搭建步骤1.创建个人站点1).新建仓库2).填写仓库资料3).访问成功2.新建index.html文件1.)点击 creat new file2.)填写文件3).再次访问个人主页项目站点访问搭建步骤1.进入项目主页&#xff…

pwd命令是什么的缩写_手机学编程(2)目录管理命令

终端有两种类型:字符终端(CLI,命令行界面,通过键盘下达命令来要求系统帮我们做事情)和图形终端(GUI,图形用户界面,可通过鼠标下达命令来要求系统帮我们做事情)。Termux是一个字符终端,我们在提示符$后输入命…

Netty实现原理浅析

为什么80%的码农都做不了架构师?>>> 1、总体结构 先放上一张漂亮的Netty总体结构图,下面的内容也主要围绕该图上的一些核心功能做分析,但对如Container Integration及Security Support等高级可选功能,本文不予分析。…

makefile与stm32工程皮毛了解

相关概念: Makefile的作用: 告诉make如何编译(compile)和链接(link)程序。编译是将源文件编译成中间代码(linux下为.o文件),链接是指将这些.o文件合成可执行文件。 Makef…

如何上传文件夹到GitHub上(配图详解)

更多干货推荐可以去牛客网看看,他们现在的IT题库内容很丰富,属于国内做的很好的了,而且是课程刷题面经求职讨论区分享,一站式求职学习网站,最最最重要的里面的资源全部免费!!!点击进…

cfg桩设备型号_什么是CFG桩?带您看下CFG桩施工工艺及流程,检测项目

一、CFG桩简介CFG(Cement Fly—ash Grave)桩是由水泥、粉煤灰、碎石、石屑或砂和水按一定配合比均匀搅拌形成的高粘结强度桩,和桩间土、褥垫层一起形成复合地基,既能较充分的发挥桩体材料的潜力,又可充分利用天然地基承载力,并能因…

docker与jenkins学习

docker命令&#xff1a; docker create <image-id>docker start <container-id>docker run <image-id> docker create <image-id> docker start <container-id>docker psdocker ps -adocker imagesdocker images –adocker stop <container…

django 修改日期

为什么80%的码农都做不了架构师&#xff1f;>>> http://blog.chedushi.com/archives/1389 auto_now无论是你添加还是修改对象&#xff0c;时间为你添加或者修改的时间。 auto_now_add为添加时的时间&#xff0c;更新对象时不会有变动。 转载于:https://my.oschi…

如何删除GitHub仓库里的文件夹(配图详解)

更多干货推荐可以去牛客网看看&#xff0c;他们现在的IT题库内容很丰富&#xff0c;属于国内做的很好的了&#xff0c;而且是课程刷题面经求职讨论区分享&#xff0c;一站式求职学习网站&#xff0c;最最最重要的里面的资源全部免费&#xff01;&#xff01;&#xff01;点击进…

jquery实现截取pc图片_如何优雅的对网页截取长图

苏生不惑第115 篇原创文章&#xff0c;将本公众号设为星标&#xff0c;第一时间看最新文章。最近写文章想截个长图&#xff0c;才发现一直使用的QQ早有这个功能了&#xff0c;这里就整理几个pc上网页长截图的方案。qq滚动截图qq截图应该很多人用过&#xff0c;我平常挂qq也只是…

在Bootstrap开发框架中使用bootstrap-datepicker插件

在基于Boostrap的Web开发中&#xff0c;往往需要录入日期内容&#xff0c;基于Boostrap的插件中&#xff0c;关于日期的录入可以使用bootstrap-datepicker这个非常不错的插件&#xff0c;以替代默认的typedate这种不太友好的日期录入控件&#xff0c;本篇介绍的是我在我的Boost…

STM32 ADC转换实验

摘自&#xff1a;STM32 ADC转换实验 作者&#xff1a;追兮兮 发布时间&#xff1a; 2020-10-29 09:42:24 网址&#xff1a;https://blog.csdn.net/weixin_44234294/article/details/109333307 STM32 ADC 简介 STM32 拥有 1~3 个 ADC&#xff08;STM32F101/102 系列只有 1 个 AD…

ubuntu下搭载LNMP环境,解决 fpm监听失败

为什么80%的码农都做不了架构师&#xff1f;>>> 1.安装mysql sudo apt-get install mysql-server mysql-client 安装过程中要输入root用户的密码。 2.安装nginx sudo apt-get install nginx 2.安装php 1. sudo apt-get install php5-fpm php5-cgi php5-mysql p…

极限与连续知识点总结_高数上知识点期末复习 极限、连续、间断点(一)

点击蓝字关注我们No.1函数分值题型解析1题型解析2tips&#xff1a;为了帮助同学们更好的通过高数期末考试&#xff0c;不挂科&#xff0c;我们最近正在加紧制作《高等数学》上册的期末复习冲刺课程&#xff0c;包含讲解视频和课程讲义。课程即将上线&#xff0c;敬请期待......…

如何使用cmd命令行打开一个文件夹?

explorer D: 转载于:https://www.cnblogs.com/cheungxiongwei/p/9829762.html

数据结构:八大数据结构分类

摘自&#xff1a;数据结构&#xff1a;八大数据结构分类 作者&#xff1a;鄙人薛某 发布时间&#xff1a;2018-09-05 18:23:28 网址&#xff1a;https://blog.csdn.net/yeyazhishang/article/details/82353846 本文目录&#xff1a; 数据结构分类1、数组2、栈3、队列4、链表5、…

汇编语言 -第十一章

第十一章 标志寄存器 一、各标志位说明1、ZF标志*名称&#xff1a;零标志位*位置&#xff1a;第6位*作用&#xff1a;记录相关指令执行后&#xff0c;结果是否为0.如果结果为0&#xff0c;则zf位为1&#xff1b;反之为0.2、PF标志*名称&#xff1a;奇偶标志位*位置&#xff1a;…