git已存在项目向多个远程仓库推送
一直以来都在使用github的桌面工具,快速、高效,代码托管放在gitee但是因为一个项目是海外服务器,所以使用git clone起来非常之慢。所以就想将项目推送到gitlab一份具体操作如下,首先请下载windows的git工具,安装之后进入到项目目录,执行git init然后执行添加远程仓库地址:git remote add origin xxx@xxxx.git(自己...
·
一直以来都在使用github的桌面工具,快速、高效,代码托管放在gitee
但是因为一个项目是海外服务器,所以使用git clone起来非常之慢。
所以就想将项目推送到gitlab一份
具体操作如下,首先请下载windows的git工具,安装之后
进入到项目目录,执行
git init
然后执行添加远程仓库地址:
git remote add origin xxx@xxxx.git(自己的远程仓库地址)
然后查看配置
vi .git/config
#内容如下,为了独立做到独立推送,我们修改如下
[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
[submodule]
active = .
[remote "origin"]
url = https://git.oschina.net/mvpboss1004/Availability.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
remote = gitlab
merge = refs/heads/master
[remote "gitlab"]
url = https://github.com/mvpboss1004/Availability.git
fetch = +refs/heads/*:refs/remotes/origin/*
保存退出
可以执行,更新
git pull origin master
git pull gitlab master
或者推送
git push origin master
git push gitlab master
如果是已存在的项目,我们一般执行如下:
git add .
git push gitlab master
如果报错以下
! [rejected] master -> master (fetch first)
error: failed to push some refs to 'git@gitlab.com:myoppo/videos.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.
是因为gitlab有一个保护机制,需要在项目设置里关闭
继续执行推送,新的代码仓库有README等存在的文件,会刀子和推送报错
查看了gitee的教程,使用以下方式
在新建项目时,如果在码云平台仓库上已经存在 readme 或其他文件,在提交时可能会存在冲突,这时用户需要选择的是保留线上的文件或者舍弃线上的文件,如果您舍弃线上的文件,则在推送时选择强制推送,强制推送需要执行下面的命令(默认不推荐该行为):
//我是采用以下push成功,因为目的就是将已有的本地代码推送到新建的远仓
$ git push origin master -f
如果您选择保留线上的 readme 文件,则需要先执行:
$ git pull origin master
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
已为社区贡献1条内容
所有评论(0)