2014-01-30 28 views
1

我們使用git的鏡像功能將OSS存儲庫鏡像到github上的我們自己的git鏡像中。然後我們標記我們在我們的私人鏡像中部署的修訂版,以便我們可以將源與版本關聯起來。不幸的是,當鏡像同步運行時,它會刪除源鏡像中不存在的目標鏡像b/c中的標記。有什麼方法可以在目標回購上鏡像和保留標籤嗎?在git鏡像期間在目標存儲庫中保留標記

以下是我們在同步腳本中進行同步的方式。

git clone --mirror https://github.com/usergrid/usergrid.git usergrid_mirror 
cd usergrid_mirror 
git remote set-url --push origin https://github.com/mycompany/usergrid.git 
git push --mirror 

當我執行 「推--mirror」 我的標籤在myCompany中/ usergrid.git被刪除。

感謝, 託德

+0

你可以在'cd usergrid_mirror'之後執行'git tag'嗎?如果有輸出(標籤),請嘗試使用'git push --mirror --tags'來代替上一條命令。 – aymericbeaumet

回答

0

正如在「How to undo 「git push --mirror」?」,你可以看看在引用日誌,看看你是否能恢復標籤的方式。

但是,一個更加明智的解決辦法會盼着將是:

  • 使用git push --mirror僅用於初始化
  • 不以共同與OSS回購,只對新的私有分支的分支任何承諾
  • 每次更新您的鏡像時,請更新您的鏡像,並提供git push --all