git 在不同服务器主机上同步 git 仓库
git 在不同服务器主机上同步 git 仓库
参考链接:https://opentechguides.com/how-to/article/git/177/git-sync-repos.html
1.在本地的一个文件夹中执行:
git clone --mirror ssh://[url]/repo_name.git
cd ropo_name.git
git remote add --mirror=fetch [secondary_romote_name] ssh://[url]/secondary_repo_name.git
2.同步
git fetch origin
git push [secondary_remote_name] --all #这是把所有分支都push
如果想单独push一个分支:
git push [secondary_remote_name] [branch]
例如:
git push [secondary_remote_name] master
设置默认的 push,下次只用 git push 即可:
git push -u [secondary_remote_name] master
3.在remote中添加多个可 push 的 url
有时候我们不止有多一个 remote 的 git 仓库,我们希望在 push 一个 remote 的时候,同时更新多个 url
git remote set-url --add --push [url] #注意:一定要把第一个 url 也执行一次,不然每次push ,只会push 你 add 的那些 url,fetch url 并不会push
git remote set-url --add --push [url_2]
其实这是在 git config 中添加了相应的内容(蓝色):
[remote "secondary_remote_name"]
url = ssh://[path]/repo_name.git
fetch = +refs/*:refs/*
pushurl = ssh://[path]/repo_name.git
pushurl = ssh://[path_2]/repo_name_2.git
所以我们可以直接在该 remote section 下面复制修改即可,是不是很方便
分析:
通过 --mirror 克隆的是一个 bare repo,里面的内容和服务器的一样,进入仓库后,显示的分支是[BARE:master],在这个文件夹里面,不能使用 work tree 相关的 git 命令,例如 git status,git pull。
secondary_repo_name.git 和 repo_name.git 的内容是完全一致的。
git 在不同服务器主机上同步 git 仓库的更多相关文章
- GitHub学习二-将本地Git库与Github上的Git库相关联
0 git clone 如果是从自己的github clone,一键搞定,和三步的git remote add功能一样. 1.创建本地库 新建目录,右键git bash here,输入 git ini ...
- git的使用(包括创建远程仓库到上传代码到git的详细步骤以及git的一些常用命令)
A创建远程仓库到上传代码到git 1)登陆或这注册git账号 https://github.com 2)创建远程仓库 3)打开终端输入命令 cd到你的本地项目根目录下,执行如下git命令 git in ...
- GIT的使用(Gitlab上传本地仓库代码,Webstorm修改更新)
准备:GIT的安装,Gitlab账户登陆,webstorm的安装 1.首先,你得先会在Gitlab中创建一个团体,在团体中创建一个项目,先建组,再建项目,网上哪里都有教程,随便找了个网址: https ...
- Git——新手入门与上传项目到远程仓库GitHub(转)
Git概述 什么是Git? 刚开始对这个东西也感到挺迷茫,并且问了好多已经学习android一段时间的同学也是一头雾水,直到了解并使用之后,才体会到Git的好处以及重要意义. Git:是目前世界上最先 ...
- Git进行fork后如何与原仓库同步
在进行Git协同开发的时候,往往会去fork一个仓库到自己的Git中,过一段时间以后,原仓库可能会有各种提交以及修改,很可惜,Git本身并没有自动进行同步的机制,这个需要手动去执行.name如何进行自 ...
- 将本地已经存在的非git项目提交到github上的空仓库
一.本地项目执行操作 1.在本地项目目录下初始化git仓库 git init 2.将本地项目下工作区的所有文件添加到git版本库的暂存区中 git add . (可以创建.gitignore文件忽略不 ...
- 【Git/GitHub学习笔记】基本操作——创建仓库,本地、远程同步等
近日想分享一些文件,但是用度盘又太麻烦了(速度也很恶心).所以突发奇想去研究了下GitHub的仓库,这篇文章也就是一个最最最基础的基本操作.基本实现了可以在GitHub上存储文本信息与代码. 由于我的 ...
- 使用网盘(Dropbox/Google Drive)同步Git仓库
还在使用老掉牙的U盘搬运代码(文件)的方式,从一台机器上复制后,粘贴到另一台机器上?太Out了.使用Github 倒是一个非常不错的替代方法.但无论是基于什么理由都有可能不想把代码公开(毕竟Githu ...
- 借助Git实现本地与GitHub远程双向传输(同步GitHub仓库)以及一些使用错误解决
前言 GitHub作为程序员必备的学习交流平台,虽然在国内速度不算快,但只要好好利用这个平台,我相信还是可以学习到很多东西.在暑期的时候,我曾经就初次远程连接到了GitHub,但开学后,不知道为什么又 ...
随机推荐
- 利用Nginx限制静态页面的访问权限(防盗链、禁止爬虫)
1.限制爬虫配置 if ($http_user_agent ~* "spider|crapy|Sogou web spider|Baiduspider|Googlebot|Bingbot|3 ...
- ovs 数据包的处理过程
Openvswitch的内核模块openvswitch.ko会在网卡上注册一个函数netdev_frame_hook,每当有网络包到达网卡的时候,这个函数就会被调用. static struct sk ...
- 常见问题:Web/Servlet生命周期与Spring Bean生命周期
Servlet生命周期 init()初始化阶段 Servlet容器加载Servlet(web.xml中有load-on-startup=1;Servlet容器启动后用户首次向Servlet发请求;Se ...
- 026 Android 带不同类型条目的listview(纯文本类型的条目,图片+文字类型的条目)+读取内存空间、手机进程信息+常驻悬浮框
1.目标效果 带不同类型条目的listview(纯文本类型的条目,图片+文字类型的条目)+常驻悬浮框 2.页面布局文件 (1)activity_process_manager.xml <?xml ...
- [ES] - 图形化界面工具
推荐更新: Windows平台为 ElasticSearch 6.x 安装 Head 客户端插件 elasticsearch-head A web front end for an Elasticse ...
- java当中JDBC当中请给出一个Oracle DataSource and SingleTon例子
[学习笔记] 6.Oracle DataSource and SingleTon: import oracle.jdbc.pool.OracleDataSource;import java.sql.C ...
- Spyder中代码提示功能添加
问题描述:Spyder中编写python程序时,无函数智能提示.如想要输入np.reshape,无reshape提示 预期目标:输入 np. 然后智能提示reshape 解决方法: 第一步:进入本地 ...
- 函数的第一类对象,f格式化,迭代器以及递归
函数名的第一类对象及使用,f格式化以及迭代器 1.函数的第一类对象 第一类对象 --特殊点 1.可以当作值被赋值给变量 def func(): print(1) a = func a() 2.可以当作 ...
- C#7 进入快速迭代道路
out变量 有一定C#编程经历的园友一定没少写如下这样的代码: int speed; if (int.TryParse(speedStr, out speed)) speed*=; 注释:int.Tr ...
- docker registry-v2 搭建私有仓库
参考官方文档:https://docs.docker.com/registry/deploying/ 参考 :http://www.tuicool.com/articles/6jEJZj 本例子使用两 ...