Git中bundle命令的使用詳解

1. 打包

用git bundle create命令來打包

# dev指具體的分支名稱,repo指項目代碼倉庫的名稱
# 產生的repo.bundle 包含瞭所有重建該倉庫 dev分支所需的數據
git bundle create repo.bundle HEAD dev

2. 驗證

用git bundle verify校驗是否合法
此命令需要在項目代碼倉庫目錄下執行,否則會報:git bundle need a repository to verify a bundle

git bundle verify repo.bundle

3. 查看分支

#用git bundle list-heads列出頂端提交
git bundle list-heads repo.bundle
#在遠程存儲庫中列出引用
git ls-remote repo.bundle

4. 導入bundle

4.1. 沒有gitlab服務器

開發環境中沒有gitlab服務器,修改代碼後隻提交到本地

# 導入的項目沒有.git目錄
git clone repo.bundle

4.2. 有gitlab服務器

4.2.1 從bundle中clone

開發環境中沒有gitlab服務器,修改代碼後需要提交到gitlab服務器

  • 在gitlab上創建代碼倉庫【註意:不要創建bundle中的分支】
  • 從bundle包中clone git clone repo.bundle
  • cd 倉庫目錄
  • 執行如下命令
git remote rename origin old-origin
git remote add origin http://ip:port/xxx/xx.git
git push -u origin -all
git push -u origin --tags

4.2.2 從bundle中fetch

開發環境中沒有gitlab服務器,修改代碼後需要提交到gitlab服務器

  • 在gitlab上創建代碼倉庫【註意:不要創建bundle中的分支
  • 將代碼倉庫clone到本地,
  • cd 倉庫目錄
  • fetch bundle中的分支
# 前面的dev是repo.bundle的分支,後面的dev是生成的新分支
git fetch repo.bundle dev:dev

將本地分支同遠程分支進行關聯

git push -u origin dev
# 相同作用的命令
git push --set-upstream origin dev

如何將本地分支同遠程分支進行關聯 本地已經創建瞭分支而遠程沒有

可以通過以下2種方法在遠程創建分支dev,並與本地分支進行關聯:

  • 方法1: git push -u origin dev
  • 方法2: git push –set-upstream origin dev

在本地創建分支並與遠程分支進行關聯,也有2種方法:

  • 方法1: 分為兩步:
  • step1:先將遠程分支pull到本地 git pull origin dev
  • step2:再在本地創建分支並與之關聯,又有2種方法

git checkout -b dev origin/dev
git checkout -b dev –track origin/dev #可以簡寫為git checkout –track origin/dev

  • 方法2:可以在pull遠程分支的同時,創建本地分支並與之進行關聯

git pull origin dev:dev——-兩個dev分別表示遠程分支名:本地分支名

到此這篇關於Git中bundle命令的使用的文章就介紹到這瞭,更多相關Git中bundle命令內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: