gitlab上的專案遷移,實質上是更改遠端倉庫的url。我們在同乙個使用者下面遷移專案的時候可以更改專案的"project name"來實現專案的遷移。但當使用者a的專案遷移到使用者b的時候,可以在使用者b下面新建乙個專案,然後把專案a的檔案拷貝過來,但是這種容易丟失commit的log記錄。不想丟失commit log記錄的話,可以用重置url的方法來實現。
1.首先檢視usera當前專案的remote url:
1
2
3
$ git remote -
v
origin git@gitlab.***.net:usera
/ansible-playbook
.git (fetch)
origin git@gitlab.***.net:usera
/ansible-playbook
.git (push)
2.使用git remote set-url重置為userb的遠端倉庫:
1
$ git remote
set
-url origin git@gitlab.***.net:userb
/ansible-playbook
.git
3.確認重置成功:
1
2
3
$ git remote -
v
origin git@gitlab.***.net:userb
/ansible-playbook
.git (fetch)
origin git@gitlab.***.net:userb
/ansible-playbook
.git (push)
4.git push強制更新:
確認remote url更新了之後,git push -f引數強制更新一下:
1
git push -fv
troubleshooting:
在push的時候報錯資訊:
1
[remote rejected] master -> master (pre-receive hook declined)
這是因為gitlab預設的master分支是受保護的,需要取消保護之後才能push:
切到project的主頁,開啟設定「protected branches」,把網頁下面master分鐘unprotect即可。
gitlab倉庫遷移
遇到乙個情況,需要將兩個gitlab倉庫合併。好在都是使用的ldap賬戶登陸,使用者賬戶不需要遷移。實際的使用情況下,需要遷移的主要部分為分組及分組下專案。gitlab的api還是很給力的,能夠獲取所有這些資訊,並利用這些資訊進行新建。獲取資訊使用get方法,修改資訊使用put方法,新建使用post...
Gitlab倉庫遷移
設定儲存倉庫資料 預設情況下omnibus gitlab 將倉庫資料儲存在 var opt gitlab git data目錄下,倉庫存放在子目錄 repositories裡面。以可以通過修改 etc gitlab gitlab.rb 的這一行來自定義 git data 的父目錄 root gitl...
gitlab倉庫遷移
把部署在本地的gitlab倉庫遷移到遠端倉庫,步驟如下 1 先進入已經checkout在本地的git 目錄,然後檢視一下當前本地的gitlab倉庫情況 2 然後設定遠端gtilab倉庫替換本地的gitlab倉庫目錄,如下圖,origin後面的就是遠端的gitlab目錄 設定完之後,再查一下 v,發現...