偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

如何將一個 Git 項目關聯(lián)到兩個遠程倉庫(且不出錯)

開發(fā) 前端
也許公司用的是 GitHub,但團隊的 CI/CD 流程跑在 GitLab 上; 或者你正在測試遷移方案; 又或者你就是喜歡多備份備份。

說實話,有時候你就是不想選邊站。

也許公司用的是 GitHub,但團隊的 CI/CD 流程跑在 GitLab 上; 或者你正在測試遷移方案; 又或者你就是喜歡多備份備份。

懂你的心情。

好消息是:完全可以將本地 Git 倉庫同時關聯(lián)多個遠程倉庫,并且用一次推送操作同步更新。

這招已經在多個生產項目中實測過了,真的比想象中簡單得多。

下面帶你一步步操作,讓你的 .git/config 文件安然無恙。

一個本地項目,兩個遠程倉庫,一條命令推送

無需額外克隆,無需復雜腳本。

第一步:準備本地倉庫

可以用現(xiàn)有倉庫,也可以新建一個:

git init

如果已經連接了 GitHub 或其他遠程,執(zhí)行:

git remote -v

會看到類似輸出:

origin  git@github.com:username/repo.git (fetch)
origin  git@github.com:username/repo.git (push)

第二步:添加第二個遠程倉庫

假設第二個遠程是 GitLab,遠程名可以自定義,常見如 origin2 或 gitlab,這里用清晰的 gitlab :

git remote add gitlab git@gitlab.com:username/repo.git

再次查看:

git remote -v

輸出會是:

origin  git@github.com:username/repo.git (fetch)
origin  git@github.com:username/repo.git (push)
gitlab  git@gitlab.com:username/repo.git (fetch)
gitlab  git@gitlab.com:username/repo.git (push)

這樣你就同時關聯(lián)了兩個遠程。

第三步:同時推送到兩個遠程倉庫

有兩種方式:

方式一:手動分別推送

git push origin main
git push gitlab main

靈活且安全,但要多執(zhí)行一次命令。

方式二:配置多推送地址,實現(xiàn)一次命令推送兩個遠程

編輯 .git/config,在 [remote "origin"] 下添加多條 pushurl

[remote "origin"]
    url = git@github.com:username/repo.git
    fetch = +refs/heads/*:refs/remotes/origin/*
    pushurl = git@github.com:username/repo.git
    pushurl = git@gitlab.com:username/repo.git

此后執(zhí)行:

git push origin main

就會同步推送到 GitHub 和 GitLab 兩個倉庫。

小貼士:

如果用于 CI/CD,請確保兩個倉庫的流水線不會因同一提交重復觸發(fā),這點很重要。

額外操作:重命名或刪除遠程

重命名遠程:

git remote rename origin github

刪除遠程:

git remote remove gitlab

為什么要用兩個遠程?

  • 備份:GitHub 崩了,GitLab 還在;
  • 遷移:試用新平臺,舊平臺繼續(xù)線上運行;
  • 鏡像:想多地方展示代碼,簡單又直觀;
  • CI/CD 分離:GitHub 管理代碼,GitLab 管理部署。

個人感想

這招救場無數(shù)。

無論面對多個客戶、團隊,還是平臺環(huán)境,能從同一個本地庫同時推送多個遠程倉庫,是開發(fā)效率的倍增器。

而且,每次用起來都感覺自己像個大佬。

趕緊把這招搬進你的工作流吧!

責任編輯:武曉燕 來源: 大遷世界
相關推薦

2020-11-13 07:16:09

線程互斥鎖死循環(huán)

2022-11-09 11:01:11

Linux命令后臺

2018-09-10 15:14:27

前端WebURL

2020-10-26 08:19:53

算法隊列

2013-07-02 10:24:52

團隊管理團隊遠程團隊

2019-12-27 15:05:51

Python類方法裝飾器

2014-07-04 10:12:09

VimIDE

2016-08-05 12:58:44

GitLinux開源

2018-02-25 17:30:18

2022-07-19 10:53:57

模型算法智能

2017-08-21 09:38:30

2012-10-18 09:24:14

Office 365

2015-07-29 10:00:16

開源項目

2014-10-21 10:25:50

程序員

2013-10-11 09:32:33

TD-LTELTE FDD4G

2022-07-29 12:56:19

寬帶路由器設置

2015-08-19 09:29:35

Git協(xié)議編寫

2019-08-26 08:00:55

Docker容器映像

2018-02-05 09:00:00

Git倉庫GitHbub

2021-11-15 09:53:16

STM32PSPMSP
點贊
收藏

51CTO技術棧公眾號