有這種需求,需要GitLab上的現有代碼庫,同步到GitHub上。
又有一種需求,需要將GitHub上的代碼庫,同步到gitlab上。
一.GitLab上的代碼庫,自動同步到GitHub上
大致需要三步
1》在GitHub上創建私有訪問Token,token就是只有一部分權限的密碼【和你的登錄密碼相比,你的登錄密碼擁有完全的權限】【所以本步驟可以不進行,直接使用github的登錄密碼也是可以的】【1-6步】
2》需要在github上創建一個空代碼庫,提供URL地址,供gitlab使用【7步】
3》在GitLab上配置鏡像地址,完成同步【8-13步】
1.登錄GitHub,在右上角頭像處,選擇setting進入
2.左側選擇Developer setting進入
3.左側點擊personal access tokens,進入
4.右上角點擊generate new token ,進入
5.選擇要給新token賦予的權限
想要本token擁有操作代碼庫的權限,應勾選“repo”
點擊頁面下方的generate token按鈕
6.保存生成的新的token到其他地方,之后你就看不到它了
token記錄在這里【https://www.cnblogs.com/sxdcgaq8080/p/10531172.html】
7.最后需要在github上創建一個空倉庫,用來接收gitlab同步過來的代碼庫
【注意:我這里建立的是私有的代碼庫,如果是公有代碼庫,可以自己嘗試,看是否會出問題!】
【如果是共有代碼庫,那么可以不使用上面生成的token,而使用你GitHub的登錄密碼,嘗試一下!】
空的代碼庫生成,需要記錄這個地址
https://github.com/AngelSXD/justjump.git
下面有用
8.進入gitlab,選擇要同步的代碼庫,點擊進去
9,光標移動到左側設置,點擊倉庫
10.選擇鏡像存儲庫 展開
11.填寫剛剛上面的那一串github的空代碼庫地址
但是注意地址需要加上username
原本的URL
https://github.com/AngelSXD/justjump.git
這里要填寫的URL
https://AngelSXD@github.com/AngelSXD/justjump.git
username和后面的地址 以@隔開
密碼處 填寫的就是上面獲取的token。
如果github中創建的是公有的倉庫,可以嘗試自己的github的登錄密碼填寫此處,以或許更多更完整的權限!!!!
12.點擊鏡像存儲庫后,會在下側生成
需要點擊多次,直到看到 更新按鈕圈圈開始轉動,並顯示更新中 即開始更新【此時就可去github查看同步過去的代碼了】
【觀察一下這里加密的URL格式:】
https://username:token或者password@github.com/AngelSXD/justjump.git
這也是之前版本的URL格式,只不過最新的gitlab版本,不需要密碼寫在URL中,而是填寫在密碼框!!!
好了 觀察gitlab和github的同步情況!!!
gitlab顯示
github顯示
13.最后,可以在IDEA修改代碼並發布至gitlab,測試是否會同步到github
gitlab上看到 已經提交的更新
github上面也自動同步到了【可能因為網路的問題,會慢一點,但是完全自動的,最終一定會同步的】【如果需要立即同步,一點延遲也受不了,則可以手動點擊更新按鈕,完成立即更新同步】
====================================================================================================================================
二、GitHub上的代碼,拉取到GitLab上
這個方向很簡單,只需要上面第一模塊在github上生成的token。留作備用
1.在gitlab上新建一個項目
2.選擇Import project 導入項目,並選擇從github導入
3.點擊從github導入后,需要在框中填入第一模塊中在github中創建的token
注意說明,gitlab要求 github提供的token所包含的權限,是需要選擇【repo】權限的,而第一模塊中,咱們獲取的token是勾選了repo權限的!!!
4.填寫以后,點擊右側List your GitHub repositories,展示你的GitHub資源庫列表
那現在選擇你想拉取到gitlab的項目,點擊后面的導入即可
點擊后,會顯示進行的狀態
點擊/root/swapping,可以跳轉到當前拉取的項目的詳情頁【速度很慢,拉取很慢】
5.導入完成后,即可在gitlab上看到從github上拉取過來的項目
6.現在,想要從gitlab拉取clone項目到本地
可以去這篇看看https://www.cnblogs.com/sxdcgaq8080/p/10509660.html
=======================================結束=======================================