美文网首页
git一个项目设置多个远程仓库

git一个项目设置多个远程仓库

作者: okerivy | 来源:发表于2017-02-06 14:01 被阅读603次

需求很简单

首先我的远程仓库没有其他分支,只有主分支
只想在本地修改一份代码后,可以通过终端一键推送到两个远程仓库。

网上的教程是这样的

修改.git/config配置文件

[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
    ignorecase = true
    precomposeunicode = true
[remote "origin"]
    url = git@github.com:okerivy/xxxx.git
    url = git@git.oschina.net:chatcoin/xxxx.git
    fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
    remote = origin
    merge = refs/heads/master

出问题

用了上面的方法,结果推送不上去,一直报错

➜  chatcoinCode git:(master) git push  origin --all

Everything up-to-date
To github.com:okerivy/xxxx.git
 ! [rejected]        master -> master (fetch first)
error: failed to push some refs to 'git@github.com:okerivy/xxxx.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

细节问题

首先我的代码是 oschina 上的。本地有一份代码。
开始的.git/config配置文件是这样的

[remote "origin"]
    url = git@git.oschina.net:chatcoin/xxxx.git
    fetch = +refs/heads/*:refs/remotes/origin/*

第一步,需要把本地所有的更改先提交到 oschina 上。

第二步,在 Github 上创建一个空的项目,什么都不要选。复制 ssh 到 .git/config配置文件,并删除 oschina 的 url

[remote "origin"]
    url = git@github.com:okerivy/xxxx.git
    fetch = +refs/heads/*:refs/remotes/origin/*

第三步,把本地代码全部强制推送到 Github。

git push -f origin master

第四部,修改.git/config配置文件,把两个 url 全部添加

[remote "origin"]
    url = git@github.com:okerivy/xxxx.git
    url = git@git.oschina.net:chatcoin/xxxx.git
    fetch = +refs/heads/*:refs/remotes/origin/*

第五步,修改项目文件,用终端命令 push 测试下

添加项目
git add .

填写提交信息
git commit -m “提交信息"

提交到服务器
git push -u origin master

获取提交的commit信息
git log

两个网站都更新成功

相关文章

  • 新建GitHub项目传到GitHub

    1.创建远程仓库 2.创建完成, 4,初始化项目 git init 5,设置本地仓库的远程仓库 git rem...

  • git一个项目设置多个远程仓库

    git设置多个远程仓库有两种方法 1.使用git remote 2.修改.git/config配置文件

  • git一个项目设置多个远程仓库

    需求很简单 首先我的远程仓库没有其他分支,只有主分支只想在本地修改一份代码后,可以通过终端一键推送到两个远程仓库。...

  • 学习如何使用git

    学习如何使用git git的初始设置 git仓库的ssh密钥 远程仓库的设置 远程仓库与本地仓库的同步(参考了这篇...

  • git文件提交命令

    简易的命令行入门教程:Git 全局设置: 创建 git 仓库: 下载远程文件 已有项目?

  • git基础使用

    获取一个新仓库 本地工程初始化git 设置个人信息 本地工程添加远程git仓库 查询远程git仓库 删除一个关联的...

  • git 远程分支错误删除后恢复

    情况说明:远程git仓库有多个分支,本地git仓库也有多个分支,某次不小心删除了远程的一个分支,然后 目标:想恢复...

  • git将本地的已有项目和远程仓库关联

    1.进入本地项目文件夹git init (会创建一个.git文件) 2.设置与远程仓库的链接git remote ...

  • git的基本使用

    标签(空格分隔): git 获取远程仓库的项目到本地 使用 git clone 远程仓库地址 (如果使用 git ...

  • git-远程仓库使用

    git远程仓库使用 官方文档 要参与任何一个 Git 项目的协作,必须要了解该如何管理远程仓库。远程仓库是指托管在...

网友评论

      本文标题:git一个项目设置多个远程仓库

      本文链接:https://www.haomeiwen.com/subject/ufzyittx.html