git本地项目配置多远程仓库

本文介绍了如何在本地Git项目中设置多个远程仓库,包括初始化、添加远程仓库、配置用户名和邮箱、推送/拉取代码,以及解决合并冲突和删除远程仓库的方法。

1.进入项目根目录

cd /www/repo

2.如果没有初始化则请输入命令完成初始化

git init

3.如果已配置过git远程仓库,请移除

git remote rm origin

4.依次添加多个远程仓库地址

git remote add github git@github.com:org/repo.git 
git remote add gitee git@gitee.com:org/repo.git

5.配置当前项目的用户名和邮箱

git config user.name Tom 
git config user.email tom@github.com

6.查看.git/config配置信息

[core]
        repositoryformatversion = 0
        filemode = true
        bare = false
        logallrefupdates = true
        ignorecase = true
        precomposeunicode = true
[branch "master"]
[remote "github"]
        url = git@github.com:org/repo.git
        fetch = +refs/heads/*:refs/remotes/github/*
[remote "gitee"]
        url = git@gitee.com:org/repo.git
        fetch = +refs/heads/*:refs/remotes/gitee/*
[user]
        email = tom@github.com

7.推送/拉取代码示例(原本默认存在的origin被命名为github和gitee)

// 分别执行github和gitee两个远程仓库的拉取和推送操作,例:
git push github master
git push github test
git pull github master

git push gitee master
git pull gitee master

8.使用 git remote -v 查看远程仓库

/www/repo> git remote -v
github  git@github.com:org/repo.git (fetch)
github  git@github.com:org/repo.git (push)
gitee   git@gitee.com:org/repo.git (fetch)
gitee   git@gitee.com:org/repo.git (push)

9.如果遇到如下问题,可参考:

Q1: ! [rejected] master -> master (non-fast-forward)……

A1:git pull gitee master --allow-unrelated-histories

Q2:fatal:refusing to merge unrelated histories ……(拒绝合并无关的历史) 

A2:

(1)将本地仓库和远程长裤分支做好映射

    git branch --set-upstream-to=origin/remote_branch your_local_branch

(2)整合远程仓库和本地仓库(忽略版本不同造成的影响)

    git pull --allow-unrelated-histories

10.删除远程仓库就变成了git remote rm gitee或git remote rm github

### 将本地项目推送到远程仓库的指南 为了能够将本地Git更改推送至Git服务器,需要将本地用户的SSH公钥添加远程git”用户的`authorized_keys`文件中[^1]。 #### 配置全局忽略文件 如果管理多个Git仓库并希望所有项目都忽略相同的文件,则可以设置一个称为“全局”的`.gitignore`文件。这避免了为每个存储库创建单独的`.gitignore`文件的需求[^2]。 #### 设置SSH连接 一旦配置好SSH,每次执行涉及链接的Git命令时,可以用更简便的方式指定路径[^3]。 #### 初始化本地仓库并与远程仓库关联 假设已经有一个本地项目想要上传到GitHub或其他Git托管服务上: ```bash cd /path/to/your/project git init ``` 初始化之后,可以通过HTTPS方式克隆现有仓库添加新的远程地址来建立联系[^4]: ```bash git remote add origin https://github.com/user/repo.git ``` 对于已有的本地仓库,可以直接添加远程URL: ```bash git remote add origin git@server:/path/to/repo.git ``` 这里使用的是SSH协议前缀(`git@`)而不是HTTP(S),因为之前已经设置了SSH密钥认证。 #### 推送初始提交 完成上述操作后,就可以准备首次推送代码了: ```bash git add . git commit -m "Initial commit" git push -u origin master ``` 这条指令会把当前分支的内容推送到名为origin的远程仓库master分支上去,并且设定上游跟踪关系以便以后简化推送过程。 #### 后续推送更新 在未来进行更修改后只需要简单运行: ```bash git push ``` 这样就能轻松地保持本地工作与远程版本同步。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值