git使用笔记(四)远程操作
By francis_hao Nov 19,2016
以一张图说明远程操作,图片来自参考[2]

git clone
从远端主机克隆一个版本库,若省略directory则生成一个和远端同名的版本库。
$ git clone <repository>
[directory]
git clone支持的一些远端主机协议
$ git clone http[s]://example.com/path/to/repo.git/
$ git clone ssh://example.com/path/to/repo.git/
$ git clone git://example.com/path/to/repo.git/
$ git clone /opt/git/project.git
$ git clone file:///opt/git/project.git
$ git clone ftp[s]://example.com/path/to/repo.git/
$ git clone rsync://example.com/path/to/repo.git/
git remote
git要求每个远端主机都必须指定一个主机名,git remote命令就用于管理主机名
查看远端主机,这里有一个默认的远端主机origin,git clone时候默认的主机名
$ git remote
查看远端主机的地址
$ git remote -v

查看主机的详细信息
$ git remote show origin

添加远端主机
$ git remote add <主机名> <地址>
删除远端主机
$ git remote rm <主机名>
重命名远端主机
$ git remote rename <原主机名> <新主机名>
git fetch
从远端主机将更新取回本地,但不做合并。
取回远端主机上的所有分支
$ git fetch <远端主机名>
取回远端主机上的指定分支
$ git fetch <远端主机名> <分支名>
查看所有分支,包括本地分支和远端主机的分支
$ git branch -a
查看远端主机分支
$ git branch -r

git pull
取回远端主机某个分支的更新,并与本地的指定分支合并
$ git pull <远程主机名> <远程分支名><:本地分支名>
如果省略本地分支名,表示将远程分支与当前所在分支合并
如果连远程分支名也省略了,表示将本地和远程主机建立追踪关系的分支(通常是同名分支)取回并合并
如果连远程主机名也省略了,则表示本地仅与一个远程主机的一个分支建立了追踪关系。
手动建立追踪关系,将本地master分支追踪origin/next分支
$ git branch --set-upstream master origin/next
git push
将本地分支的更新,推送到远程主机
$ git push <远程主机名> <本地分支名><:远程分支名>
如果省略远程分支名,则表示将本地分支推送到与之存在追踪关系的远程分支(通常两者同名),如果该远程分支不存在,则会被新建。
如果连本地分支名也省略了,则表示将当前分支名推送到与之存在追踪关系的远程分支
如果连远程主机名也省略了,则表示将当前分支推送到仅有的一个远程主机的建立了追踪关系的分支上。
如果仅省略本地分支名,则表示删除指定的远程分支,因为这等同于推送一个空的本地分支到远程分支。
推送并指定一个默认的远程主机名,以便下次直接使用不带参数的git push命令
$ git push -u origin master:master

本文由 刘英皓 创作,采用 知识共享 署名-非商业性使用-相同方式共享 3.0 中国大陆 许可协议进行许可。欢迎转载,请注明出处:
转载自:http://www.cnblogs.com/yinghao1991/p/6081897.html
参考
[1] 蒋鑫.《git权威指南》北京:机械工业出版社,2011.6
[2] 阮一峰 http://www.ruanyifeng.com/blog/2014/06/git_remote.html git远程操作详解
git使用笔记(四)远程操作的更多相关文章
- Git学习笔记四--远程仓库
Git远程仓库 Git是分布式版本控制系统,同一个Git仓库,可以分布到不同的机器上. 怎么分布呢?最早,肯定只有一台机器有一个原始版本库,此后,别的机器可以“克隆”这个原始版本库,而且每台机器的版本 ...
- Git分支中的远程操作实践
Git分支中的远程操作实践 前几篇博客陆陆续续的讲了好多关于Git操作的内容, 其中在上篇博客聊了<Git中的merge.rebase.cherry-pick以及交互式rebase>,本篇 ...
- Git 学习(四)操作修改和版本穿梭
Git 学习(四)操作修改和版本穿梭 之前的章节,已介绍了本地Git库创建.暂存区增.删.改,以及提交版本库:可回顾下命令操作: git add 和 git commit. 光有之前章节的操作,Git ...
- 项目管理---git----快速使用git笔记(四)------远程项目代码的首次获取
使用git最常见的场景是 你需要参与到一个项目中,而这个项目的代码,同事已经上传到github或者https://coding.net了. 这时候他会给你一个项目代码的远程仓库链接. 例如: http ...
- Git知识总览(六) Git分支中的远程操作实践
前几篇博客陆陆续续的讲了好多关于Git操作的内容,本篇博客仍然也不例外,不过本篇博客的主题是关于git的远程操作的.依照之前博客的风格,我们依然依托于LearningGitBranch中的相关内容来探 ...
- Git学习笔记——搭建远程仓库
有空再把笔记移上来 注意点:git remote add origin不是相对于所有git仓库,只相对于当前git仓库 心得:远程建立裸仓库,意味着我不应该直接操作远程仓库.如果我是管理员,我应该先p ...
- git学习笔记5-撤销操作
git撤销有四种情况,一是没有commit,想恢复所有文件:二是没有commit,想恢复全部文件:三是已经commit了,想恢复某个版本:四是本地已经提交了,想从远程库恢复. 1. 没有commit, ...
- Git学习笔记(二) 远程仓库及分支
添加远程仓库(以GitHub为例) 所谓的远程仓库,其实就和本地仓库一样,只是我们本地电脑可能会关机什么的.远程仓库的目的就是保证7*24小时开启状态.GitHub是一个很好的公共Git远程仓库(后面 ...
- git学习笔记 ---添加远程库
现在的情景是,你已经在本地创建了一个Git仓库后,又想在GitHub创建一个Git仓库,并且让这两个仓库进行远程同步,这样,GitHub上的仓库既可以作为备份,又可以让其他人通过该仓库来协作,真是一举 ...
- 【Git学习笔记】远程仓库
第一种情景:本地初始化一个Git仓库后,接着又在github上创建了一个Git仓库,现在要让这两个仓库进行远程同步. 1. 关联本地仓库就和远程仓库 $ git remote add origin ...
随机推荐
- 第一次学习tornado小练习
内容 这次是python的一个web框架,tornado,这个web框架在python的几个web框架中一个比较简单的web框架,刚开始接触python的时候就知道python有两个比较常用的web框 ...
- 141. 环形链表 LeetCode报错:runtime error: member access within null pointer of type 'struct ListNode'
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode ...
- IDEA中SVN的使用
文件红色:表示文件没有添加到服务器 绿色:表示没有更新新的修改到服务器 普通黑色:表示和服务器同步 1.如何让修改的文件的父文件也变成蓝色(未提交的状态) 2.其中的1.6 format 1.7 fo ...
- WPF中,如何将绑定源设置到单件实例
原文:WPF中,如何将绑定源设置到单件实例 WPF中,如何将绑定源设置到单件实例 周银辉 大概两个月前,曾有位朋友问我:如 ...
- Linux 下 PHP 扩展Soap 编译安装
1.进入 PHP 的软件包 pdo 扩展目录中(注:不是 PHP 安装目录) [root@tester /]# /home/tdweb/php-5.4.34/ext/soap 执行 phpize 命令 ...
- web开发微信文章目录
Web开发微信文章目录 2015-12-13 Web开发 本文是Web开发微信的文章目录.通过目录查看文章编号,回复文章编号就能查看文章全文. 回复编号查看全文,搜索分类名可以获得该分类下的文章. ...
- 网页设计简史看设计&代码“隔膜”
本文来自网易云社区 作者:马宝 设计与代码之间隔膜所在?既然你诚心诚意地问了,我就大发慈悲地告诉你.为了防止地球被破坏,为了维护世界的和平,为了贯彻爱与真实的邪恶~,我是穿梭在前端与设计之间爱与美丽的 ...
- Django admin源码剖析
单例模式 单例模式(Singleton Pattern)是一种常用的软件设计模式,该模式的主要目的是确保某一个类只有一个实例存在.当你希望在整个系统中,某个类只能出现一个实例时,单例对象就能派上用场. ...
- Halcon环境搭建
1.Visual Studio 2017安装教程 2.Qt5.9安装教程 3.VS2017中Qt插件安装教程
- Leetcode 55. Jump Game & 45. Jump Game II
55. Jump Game Description Given an array of non-negative integers, you are initially positioned at t ...