Gitlab to GitHub 設定方式

因為需要將 GitLab 特定專案與 GitHub 特定專案進行同步, 因此將設定過程記錄在以下, 目前同步情境是 GitLab 如果有 push 就會自動 push 到 GitHub 上.

  • 預計將 GitLab 上的 php-templ-verify-prj 專案 與 GitHub 上的 php-app-pipeline-template 進行同步
  1. 在 GitLab 的 php-templ-verify-prj 專案設定頁面進行設定 Settings → Repository → Mirroring repositories [Expand] 展開
  2. Git repository URL 輸入 GitHub 的網址, 不過在 https:/ / 後要加上 GitHub 帳號 Exp:

    https://[email protected]/iii-org/php-app-pipeline-template.git

  3. Mirror direction : Push
  4. Authentication method : Password
  5. Password : 輸入 GitHub 帳號的密碼
  6. 按下 [Mirror repoitory] 後完成設定
  • 如果一切都正確, 可以點選同步符號進行同步
  • 之後在 GitLab 上的 push 就可在 GitHub 上看到
  1. 先將 GitHub 的專案 clone 到本地的工作目錄內
  2. 修改這目錄內的 .git/config 內的 URL 由原本的 GitHub 網址改為 GitLab 網址, Exp.
    [core]
    	repositoryformatversion = 0
    	filemode = false
    	bare = false
    	logallrefupdates = true
    	symlinks = false
    	ignorecase = true
    [remote "origin"]
    	url = http://gitlab-demo.iiidevops.org/root/php-app-pipeline-template.git
    	fetch = +refs/heads/*:refs/remotes/origin/*
    [branch "master"]
    	remote = origin
    	merge = refs/heads/master
  3. 再執行一次 push 到 GitLab 就會兩邊一致, 此時進行同步才會正確
  • tech/gitlab-to-github.txt
  • 上一次變更: 2021/02/04 11:42
  • jonathan