bladeX物聯網平臺私庫操作處理步驟

孤草之魂發表於2024-11-20

(一)獲取對方私庫程式碼並上傳到自己的gitlab

步驟 1: 克隆對方的私有倉庫

首先,您需要在本地計算機上克隆對方的私有倉庫。這通常需要使用HTTPS或SSH URL,並且可能需要身份驗證(如使用者名稱和密碼、SSH金鑰等)。

# 假設您已經配置了SSH金鑰或知道HTTPS的使用者名稱和密碼  
git clone https://center.javablade.com/blade/BladeX-Links.git upstream-repo  
# 或者使用SSH(如果可用)  
# git clone git@center.javablade.com:blade/BladeX-Links.git upstream-repo  
  
# 進入倉庫目錄  
cd upstream-repo

步驟 2: 將克隆的倉庫新增為上游遠端倉庫(如果尚未命名)

如果您在克隆時沒有使用origin作為遠端倉庫的名稱(通常Git會預設使用origin),則可能需要重新命名它以避免混淆。但在這個例子中,我們將其命名為upstream以明確其用途。

# 如果遠端倉庫已經命名為origin,並且您想保留它用於其他目的,則執行以下操作  
git remote rename origin upstream

步驟 3: 將您的Git伺服器倉庫新增為遠端倉庫

現在,您需要將您自己的Git伺服器倉庫新增為遠端倉庫,以便您可以將更改推送回去。

# 假設您的Git伺服器倉庫URL是git remote add origin http://192.168.2.204/bladeiot/bladex-links.git  
git remote add origin http://192.168.2.204/bladeiot/bladex-links.git  
  
# 驗證遠端倉庫列表  
git remote -v

步驟 4: 將上游倉庫的內容推送到您的Git伺服器

由於您的Git伺服器上的倉庫是空的,您可能需要將上游倉庫的所有分支和標籤都推送到您的Git伺服器。但是,通常只推送main(或master)分支就足夠了,除非您還需要其他分支或標籤。

# 推送main分支(或上游倉庫中的主分支名稱)  
git push -u origin master  
  
# 如果您還需要推送其他分支或標籤,請相應地執行命令  
# git push origin <branch-name>  
# git push origin --tags

步驟 5: 在您的Git伺服器上建立開發分支

在本地建立開發分支,然後將它推送到Git伺服器。

# 在本地建立開發分支  
git checkout -b jw-dev-branch  
  
# 將開發分支推送到Git伺服器  
git push -u origin jw-dev-branch

此時使用使用git branch 檢視分支情況:

表示當前有兩個分支,且當前處於master主分支上

(二)從對方私庫更新程式碼到自己gitlab

當對方修改後,將對方的修改更新到自己的伺服器上。

快捷操作(將上游主分支master更新內容更新到自己伺服器主分支master,即遠端上游->本地->伺服器):

git checkout master
git fetch upstream
git merge upstream/master
git push origin master

詳細步驟說明:

1、切換主分支

進入需要更新的upstream資料夾,切換主分支(如果已經在主分支,則跳過該步驟)。

切換到 master 分支,以便從遠端倉庫拉取最新的更改。

git checkout master

確保已正確配置遠端倉庫

透過 git remote -v 檢查你的遠端倉庫配置:

origin  http://192.168.2.204/bladeiot/bladex-links-ui.git (fetch)
origin  http://192.168.2.204/bladeiot/bladex-links-ui.git (push)
upstream        https://center.javablade.com/blade/BladeX-Links-UI.git (fetch)
upstream        https://center.javablade.com/blade/BladeX-Links-UI.git (push)

2、拉取 upstream 的最新程式碼

upstream 倉庫拉取更新到本地分支:

git fetch upstream

如果提示授權失敗,則多執行幾遍,如果跳轉到瀏覽器,則會提示成功。

正常情況下,第一次執行拉取命令時(例如 git fetch upstream),Git 會提示輸入使用者名稱和密碼。輸入後會自動儲存。

如果多嘗試幾次還是有問題可以先清除舊的認證資訊再重新執行:

git credential-cache exit
git fetch upstream

3、檢視拉取的更新內容

拉取成功後,可以用以下命令檢視更新的內容:

git log upstream/master --oneline

日誌沒有顯示完全,可以按回車檢視,直到顯示<end>,此時可以輸入q退出

以下是分頁器一些常用操作鍵:

  • 空格鍵:向下翻一頁。
  • Enter鍵:向下翻一行。
  • b:向上翻一頁。
  • k:向上翻一行。
  • g:跳到檔案開頭。
  • G:跳到檔案末尾。

或者檢視與當前本地分支的差異:

git diff master upstream/master

4、合併 upstream 的更新到本地分支

如果你當前的分支是 master,可以將 upstream/master 的更新合併到本地:

git merge upstream/master

如果有衝突,Git 會提示衝突的檔案,需要手動解決衝突。

5. 同步更新到你的伺服器

將合併後的更新推送到你的伺服器 origin

git push origin master

6. 更新其它分支(如果需要)

如果需要更新其它分支,也是按照一樣的步驟:

// 比如更新dev分支,先切換到 dev 分支
git checkout dev
// 合併 upstream/dev
git merge upstream/dev
// 推送到伺服器
git push origin dev

7. 同步Tag(如果需要)

如果需要將 upstream 的 Tags 也同步到伺服器,可以推送 Tags:

git push origin --tags

(三)主分支合併到開發分支

1、切換到您的開發分支

拉取完 master 分支的最新更改後,切換到您的開發分支 jw-dev-branch

git checkout jw-dev-branch

2、將主分支的更改合併到您的開發分支

git merge master

相關文章