git远程仓库的使用

Git远程仓库 文章目录一、添加远程仓库1.1、创建远程仓库1.2、关联远程仓库1.3、配置SSH密钥二、从远程仓库克隆2.1、创建远程仓库2.2、克隆远程仓库 一、添加远程仓库 之前我们仅仅是在本地创建了一个Git本地仓库,这里我们再在GitHub创建一个Git远程仓库,并且让这两个仓库进行远程同步,这样,GitHub上的仓库既可以作为备份,又可以让其他人通过该仓库来协作开发。 1.1、创建远程仓库 首先登陆GitHub,然后在右上角找到“New repository”按钮,创建一个新的仓库 在Repository 阅读详情

http://progit.org/book/zh/

Pro Git

This is an in-progress translation. 
To help translate the book, please fork the book  at GitHub and push your contributions.

远程仓库的使用

要参与任何一个 Git 项目的协作,必须要了解该如何管理远程仓库。远程仓库是指托管在网络上的项目仓库,可能会有好多个,其中有些你只能读,另外有些可以写。同他人协作开发某个项目时,需要管理这些远程仓库,以便推送或拉取数据,分享各自的工作进展。管理远程仓库的工作,包括添加远程库,移除废弃的远程库,管理各式远程库分支,定义是否跟踪这些分支,等等。本节我们将详细讨论远程库的管理和使用。

查看当前的远程库

要查看当前配置有哪些远程仓库,可以用 git remote 命令,它会列出每个远程库的简短名字。在克隆完某个项目后,至少可以看到一个名为 origin 的远程库,Git 默认使用这个名字来标识你所克隆的原始仓库:

$ git clone git://github.com/schacon/ticgit.git
Initialized empty Git repository in /private/tmp/ticgit/.git/
remote: Counting objects: 595, done.
remote: Compressing objects: 100% (269/269), done.
remote: Total 595 (delta 255), reused 589 (delta 253)
Receiving objects: 100% (595/595), 73.31 KiB | 1 KiB/s, done.
Resolving deltas: 100% (255/255), done.
$ cd ticgit
$ git remote 
origin

也可以加上 -v 选项(译注:此为 –verbose 的简写,取首字母),显示对应的克隆地址:

$ git remote -v
origin	git://github.com/schacon/ticgit.git

如果有多个远程仓库,此命令将全部列出。比如在我的 Grit 项目中,可以看到:

$ cd grit
$ git remote -v
bakkdoor  git://github.com/bakkdoor/grit.git
cho45     git://github.com/cho45/grit.git
defunkt   git://github.com/defunkt/grit.git
koke      git://github.com/koke/grit.git
origin    git@github.com:mojombo/grit.git

这样一来,我就可以非常轻松地从这些用户的仓库中,拉取他们的提交到本地。请注意,上面列出的地址只有 origin 用的是 SSH URL 链接,所以也只有这个仓库我能推送数据上去(我们会在第四章解释原因)。

添加远程仓库

要添加一个新的远程仓库,可以指定一个简单的名字,以便将来引用,运行 git remote add [shortname] [url]:

$ git remote
origin
$ git remote add pb git://github.com/paulboone/ticgit.git
$ git remote -v
origin	git://github.com/schacon/ticgit.git
pb	git://github.com/paulboone/ticgit.git

现在可以用字串 pb 指代对应的仓库地址了。比如说,要抓取所有 Paul 有的,但本地仓库没有的信息,可以运行 git fetch pb:

$ git fetch pb
remote: Counting objects: 58, done.
remote: Compressing objects: 100% (41/41), done.
remote: Total 44 (delta 24), reused 1 (delta 0)
Unpacking objects: 100% (44/44), done.
From git://github.com/paulboone/ticgit
 * [new branch]      master     -> pb/master
 * [new branch]      ticgit     -> pb/ticgit

现在,Paul 的主干分支(master)已经完全可以在本地访问了,对应的名字是 pb/master,你可以将它合并到自己的某个分支,或者切换到这个分支,看看有些什么有趣的更新。

从远程仓库抓取数据

正如之前所看到的,可以用下面的命令从远程仓库抓取数据到本地:

$ git fetch [remote-name]

此命令会到远程仓库中拉取所有你本地仓库中还没有的数据。运行完成后,你就可以在本地访问该远程仓库中的所有分支,将其中某个分支合并到本地,或者只是取出某个分支,一探究竟。(我们会在第三章详细讨论关于分支的概念和操作。)

如果是克隆了一个仓库,此命令会自动将远程仓库归于 origin 名下。所以,git fetch origin 会抓取从你上次克隆以来别人上传到此远程仓库中的所有更新(或是上次 fetch 以来别人提交的更新)。有一点很重要,需要记住,fetch 命令只是将远端的数据拉到本地仓库,并不自动合并到当前工作分支,只有当你确实准备好了,才能手工合并。(说明:事先需要创建好远程的仓库,然后执行:git remote add [仓库名] [仓库url],git fetch [远程仓库名],即可抓取到远程仓库数据到本地,再用git merge remotes/[仓库名]/master就可以将远程仓库merge到本地当前branch。这种分支方式比较适合独立-整合开发,即各自开发测试好后再整合在一起。比如,Android的Framework和AP开发。

可以使用--bare 选项运行git init 来设定一个空仓库,这会初始化一个不包含工作目录的仓库。

$ cd /opt/git

$ mkdir project.git

$ cd project.git

$ git --bare init

这时,Join,Josie 或者Jessica 就可以把它加为远程仓库,推送一个分支,从而把第一个版本的工程上传到仓库里了。)

如果设置了某个分支用于跟踪某个远端仓库的分支(参见下节及第三章的内容),可以使用 git pull 命令自动抓取数据下来,然后将远端分支自动合并到本地仓库中当前分支。在日常工作中我们经常这么用,既快且好。实际上,默认情况下 git clone 命令本质上就是自动创建了本地的 master 分支用于跟踪远程仓库中的 master 分支(假设远程仓库确实有 master 分支)。所以一般我们运行 git pull,目的都是要从原始克隆的远端仓库中抓取数据后,合并到工作目录中当前分支。

推送数据到远程仓库

项目进行到一个阶段,要同别人分享目前的成果,可以将本地仓库中的数据推送到远程仓库。实现这个任务的命令很简单: git push [remote-name] [branch-name]。如果要把本地的 master 分支推送到 origin 服务器上(再次说明下,克隆操作会自动使用默认的 master 和 origin 名字),可以运行下面的命令:

$ git push origin master

只有在所克隆的服务器上有写权限,或者同一时刻没有其他人在推数据,这条命令才会如期完成任务。如果在你推数据前,已经有其他人推送了若干更新,那你的推送操作就会被驳回。你必须先把他们的更新抓取到本地,并到自己的项目中,然后才可以再次推送。有关推送数据到远程仓库的详细内容见第三章。

查看远程仓库信息

我们可以通过命令 git remote show [remote-name] 查看某个远程仓库的详细信息,比如要看所克隆的origin 仓库,可以运行:

$ git remote show origin
* remote origin
  URL: git://github.com/schacon/ticgit.git
  Remote branch merged with 'git pull' while on branch master
    master
  Tracked remote branches
    master
    ticgit

除了对应的克隆地址外,它还给出了许多额外的信息。它友善地告诉你如果是在 master 分支,就可以用git pull 命令抓取数据合并到本地。另外还列出了所有处于跟踪状态中的远端分支。

实际使用过程中,git remote show 给出的信息可能会像这样:

$ git remote show origin
* remote origin
  URL: git@github.com:defunkt/github.git
  Remote branch merged with 'git pull' while on branch issues
    issues
  Remote branch merged with 'git pull' while on branch master
    master
  New remote branches (next fetch will store in remotes/origin)
    caching
  Stale tracking branches (use 'git remote prune')
    libwalker
    walker2
  Tracked remote branches
    acl
    apiv2
    dashboard2
    issues
    master
    postgres
  Local branch pushed with 'git push'
    master:master

它告诉我们,运行 git push 时缺省推送的分支是什么(译注:最后两行)。它还显示了有哪些远端分支还没有同步到本地(译注:第六行的 caching 分支),哪些已同步到本地的远端分支在远端服务器上已被删除(译注:Stale tracking branches 下面的两个分支),以及运行 git pull 时将自动合并哪些分支(译注:前四行中列出的 issues 和 master 分支)。(此命令也可以查看到本地分支和远程仓库分支的对应关系。)

远程仓库的删除和重命名

在新版 Git 中可以用 git remote rename 命令修改某个远程仓库的简短名称,比如想把 pb 改成 paul,可以这么运行:

$ git remote rename pb paul
$ git remote
origin
paul

注意,对远程仓库的重命名,也会使对应的分支名称发生变化,原来的 pb/master 分支现在成了paul/master。

碰到远端仓库服务器迁移,或者原来的克隆镜像不再使用,又或者某个参与者不再贡献代码,那么需要移除对应的远端仓库,可以运行 git remote rm 命令:

$ git remote rm paul
$ git remote
origin

 

Git 远程仓库(Github) Git 并不像 SVN 那样有个中心服务器。目前我们使用到的 Git 命令都是在本地执行,如果你想通过 Git 分享你的代码或者与其他开发人员合作。你就需要将数据放到一台其他开发人员能够连接的服务器上。本例使用了 Github 作为远程仓库,你可以先阅读我们的。 阅读详情

相关推荐

Git远程仓库深入学习之(一):Git远程仓库与远程分支

接触Git远程仓库很久了,一直对某些概念模模糊糊,平时也没有很多用到,借此机会彻底弄懂 1.远程仓库与本地仓库的对应关系 说到对应关系,是指在多仓库的环境下,我理解这一对应关系的来源是repo的manifests文件例如: <manifest> <remote name="middleware/reponame" fetch="http://netaddre...

liaojunwu的博客 962

Git远程仓库的使用

操作是针对工作目录(Working Directory)中的文件进行的,目的是撤销对文件的修改。当我们在工作目录中对一个文件进行了修改但还没有提交时,可以使用撤销修改操作将该文件恢复到上一个提交时的状态。操作是针对Git的提交历史进行的,目的是删除或撤销某个提交。当我们需要撤销某个提交时,可以使用撤销提交操作将该提交从提交历史中删除或者将其修改撤销。因此应该谨慎使用。如果提交已经被推送到了远程仓库,撤销提交会破坏代码库的一致性,因此需要谨慎考虑是否需要撤销提交。,不会影响远程仓库和提交历史。

m0_61744997的博客 345

从零开始:用ADS仿真设计一个2.4GHz Wi-Fi低噪声放大器(含完整电路图)

本文提供了一份详细的ADS软件仿真指南,手把手教你从零开始设计一个2.4GHz Wi-Fi低噪声放大器。内容涵盖核心指标理解、晶体管选型与建模、匹配网络设计、偏置电路集成,并通过S参数仿真、噪声优化及线性度验证等步骤,最终呈现完整的优化电路图,助力射频初学者掌握LNA设计全流程。

weixin_29197835的博客 805

使用git远程仓库

​ 首先要生成公钥和私钥。打开git命令行,输入 ssh-keygen -t rsa -C “自己的邮箱地址”​ 在用户目录下可以找到.ssh文件夹,用文本编辑器打开id_rsa.pub文件,并复制里面的内容。​ 打开浏览器输入https://gitee.com/login,登录自己的码云账号,在设置页面,打开SSH公钥,把刚才复制的内容粘贴到里面。​ 在码云的个人主页上,可以新建项目。

weixin_56109504的博客 243

图像去模糊(二)——Richardson–Lucy算法

Richardson Lucy Algorithm(Richardson-Lucy算法详解及效果实例)

xueruhongchen的博客 3万+

深入解析时钟同步技术:相位同步、频率同步与同源时钟的实战应用

本文深入解析时钟同步技术的三种核心方式:相位同步、频率同步与同源时钟,详细阐述其技术原理、实现方案及实战应用。通过对比分析不同同步方式的特点与适用场景,为电子系统设计提供选型指南,帮助工程师优化时钟网络设计,提升系统稳定性和性能。

weixin_29240711的博客 449

Git远程仓库使用方法(非常详细),从零基础入门到精通,看完这一篇就够了

远程仓库在协同开发中起着关键的作用,它提供了一个中央存储库,使多个开发者能够协同工作、共享代码、协同工作、分支管理、解决冲突和跟踪项目的进展。

leah126的博客 8609

DeepSeek-V4-Pro 正式版突袭上线:Agent 能力暴涨,DeepSWE 直接干翻 Claude Opus 4.8

8 月 12 日深夜,DeepSeek 悄悄在 API 文档里上架了一个新版本号——DeepSeek-V4-Pro-0813。第二天(13 日),这个版本被确认为 V4 Pro 正式版。没有发布会,没有预热,只改了版本号,就把整个 AI 圈的注意力又抢了过去。

2601_96613114的博客 838

做运维有前途吗?

网络安全行业产业以来,随即新增加了几十个网络安全行业岗位︰网络安全专家、网络安全分析师、安全咨询师、网络安全工程师、安全架构师、安全运维工程师、渗透工程师、信息安全管理员、数据安全工程师、网络安全运营工程师、网络安全应急响应工程师、数据鉴定师、网络安全产品经理、网络安全服务工程师、网络安全培训师、网络安全审计员、威胁情报分析工程师、灾难恢复专业人员、实战攻防专业人员…从某种程度来讲,在网络安全领域,跟医生职业一样,越老越吃香,因为技术愈加成熟,自然工作会受到重视,升职加薪则是水到渠成之事。

ALLEN'Blog 5998

基于Ansys Fluent 的颗粒分离/过滤解决方案

过滤是指通过特殊装置将颗粒移除,将流体提纯净化的过程。过滤的方式很多,应用的物系也很广泛,固-液、固-气、大颗粒-小颗粒等。

sh_djoin的博客 1852

基于Cohesive单元的二维水力压裂(二)

部件 2D-deformabel-shell 尺寸100 矩形工具(-20,-20)(20,20) 刨分:预知cohesive单元&定位注液点位置,定义全局网格尺寸0.2 X方向采用过渡网格,向中间加密。指定网格类型:CPE4P,指定单元类型,COH2D4P,粘性正则化系数:0.0001 材料属性 材料1 弹性模量10e9,泊松比0.25,渗透率1e-7,孔隙比0.1,液体比重...

s0302017的博客 1598

【Git原理与使用三】Git远程仓库

介绍git怎么管理远程仓库

wrrtx的博客 2353

华为od 面试八股文_Python_02_含答案

华为od 面试八股文_Python_02_含答案

MISAYAONE的博客 4532

Git远程仓库使用

Git远程仓库使用

小何的博客 1万+

基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的商品识别系统(深度学习+UI界面+训练数据集+Python代码)

随着新零售和智能仓储的快速发展,商品识别技术成为计算机视觉领域的重要研究方向。本文详细介绍了基于YOLO系列算法的商品识别系统的完整实现方案,涵盖算法原理、数据集构建、模型训练、系统集成和可视化界面开发。通过对比YOLOv5到YOLOv8各版本性能差异,我们构建了一个高效、准确且用户友好的商品识别系统,并提供完整的代码实现。

YOLO 284

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

推送本地仓库到远程git仓库

你可以将本地的开发成果安全地推送到远程仓库进行备份和共享,同时通过查看分支信息和仓库状态,掌握代码的更新情况,确保本地和远程的一致性。该命令会显示所有远程仓库的名称,在一个包含多个远程仓库的项目中,可以通过此命令查看已关联的远程仓库列表,它只是简单地列出远程仓库的名称,例如这里关联了。是要配置的用户邮箱属性,设置用户邮箱也是为了在代码提交时提供更详细的信息,方便联系提交者,同时在一些开源项目中,邮箱可能会被用来验证提交者的身份。这在团队协作中很有用,不同的人使用不同的用户名进行提交,方便追溯代码的提交者。

qq_63964907的博客 5991

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

【Git】远程仓库

常用代码托管服务 GitHub 地址: https://github.com/ 特点: GitHub 是一个面向开源及私有软件项目的托管平台,只支持Git作为唯一的版本库格式进行托管,因此命名为GitHub。它提供了丰富的协作功能,如pull request、issue跟踪、项目管理等。 码云(Gitee) 地址: https://gitee.com/ 特点: 码云是国内的一个代码托管平台,由于服务器在国内,所以相比于GitHub,码云速度会更快。它适合国内开发者使用,并提供了类似于GitHub的功能。

咖喱年糕的博客 1447

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

使用git上传到远程仓库

1·介绍git hub拥有1亿以上的开发人员,400万以上组织机构和3.3亿以上资料库在眼中GitHub是乌托邦是天堂,GitHub凭借它强大的保密性与安全性深受人们青睐首先找到github官网进入官网后要注册一个自己的github账号注:这里可以使用自己的qq邮箱来注册输入你的邮箱然后输入自己的密码 接着再输入自己的名字当这样子时候会有问题证明你是真人 我们只需要按照他的要求来完成 就OK如:提交后会给你的qq邮箱发短信这样后 当我们输入邮箱发的短信验证 就证明我们以及注册成功了。

asus233的博客 2089

Git关联远程仓库

前面我们介绍的所有操作都是在本地仓库完成的,本文我们主要来看看如何和远程仓库进行交互,为了方便起见,这里远程仓库我们选择GitHub。 本文是Git系列的第五篇,了解前面的文章有助于更好的理解本文: 1.Git概述 2.Git基本操作 3.Git中的各种后悔药 4.Git分支管理 配置SSH KEYSSH KEY的配置不是必须的,不配置的话我们就只能使用HTTPS协议,这样每次提交时要

江南一点雨的专栏 5万+

本地Git仓库同步到Bitbucket 远程Git仓库

前言远程Git仓库,可以这样理解:不在本地的Git仓库,这不是废话嘛?!本地仓库内容可以和多个远程仓库同步,本地仓库出问题或者远程仓库其中一个有问题,那么剩余的仓库还是可以使用的,这就是分布式管理的魅力所在 ! O(∩_∩)O~说了那么多废话,下面我们开始具体的操作:(1) 先在github.com或bitbucket.org 创建一个仓库,仓库名就是项目名(一般有依赖工程,都放在这个项目名里面的)

lue2009的专栏 9254

git远程仓库管理

总结:创建远程仓库:可以通过在代码托管平台(如GitHub、GitLab)上创建仓库,也可以通过在本地使用git命令初始化远程仓库。关联本地仓库与远程仓库:使用命令git remote add origin 将本地仓库与远程仓库关联起来。推送代码到远程仓库:使用命令git push -u origin 将本地代码推送到远程仓库。克隆远程仓库:可以使用命令git clone 将远程仓库克隆到本地。

Flying_Fish_roe的博客 1141

git添加远程仓库

在本地建立了一个项目,是从一个origin的远程仓库克隆下来的,但是这个是自己用来学习的项目,想提交到自己的github中建立的项目上去,这就要用到remote了,可以使用git remote add [name] [github项目地址] 步骤如下: 1、使用remote -v 查看当前有哪些远程仓库,如图: 2、使用git remote add MyGH https://github

leedaning的专栏 7385

Git 远程仓库

Git 远程仓库是一个托管在网络服务器上的代码仓库,它是团队协作开发的核心。

2301_76984003的博客 848

Git如何搭建远程仓库

Git是分布式版本控制系统,同一个Git仓库,可以分布到不同的机器上。这就需要一台电脑充当服务器的角色,每天24小时开机,其他每个人都从这个“服务器”仓库克隆一份到自己的电脑上,并且把各自的提交推送到服务器仓库里,也从服务器仓库中拉取别人的提交。 那么如何使用Git 连接远程仓库呢? 远程仓库->一般指的是代码托管平台。 那就先来看看三个较熟悉的版本(代码)托管服务平台。 版本(代码)托管服务平台 码云(gitee.com):是开源中国社区团队推出的基于Git的快速的、免费的、稳定的在线代码托管平台,不限

春色常昭志士 才华乐奉勤人 6685

git :如何创建远程仓库

git :如何创建远程仓库 一、执行下面的命令创建仓库。使用命令"git --bare init"(bare汉语意思是:裸,裸的)初始化的版本库,不使用--bare选项时,就会生成.git目录以及其下的版本历史记录文件,这些版本历史记录文件就存放在.git目录下;而使用--bare选项时,不再生成.git目录,而是只生成.git目录下面的版本历史记录文件,这些版本历史记录文件也不再存放在.git目录下面,而是直接存放在版本库的根目录下面​​​​​​​。...

海月汐辰 4577
上一篇: Git中的fetch和pull
下一篇: Pro Git eBooks
sanlinux
博客等级 码龄17年 92粉丝 158原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值