2011-03-16 115 views
2

我從一段代碼開始,它分成兩個小程序,每個程序分別位於不同的分支中。我如何拆分git倉庫(按分支)

他們有許多相似之處,但我想將它們分成2個回購,這樣我就可以同時以更簡單的方式同時處理兩者。這很煩人,必須提交一個更改(並且在切換前切換上下文之前刪除/提交非重大更改(例如gitignore和makefile標誌)

這是一個非常簡單的線性單人歷史記錄,除了早期的分割和一些不必要的藏匿處。
什麼來完成它的最佳方式?

回答

5

最簡單的方法是隻克隆庫,並可能在克隆庫中刪除不需要的分支。

1

更簡單

mkdir program1 
cd program1 
git init 
git pull ../origrepo smallprogram1 

沖洗,重複

如果您在分支歷史記錄中不再有任何記錄,請參閱git-filter-branch(例如, --index-filter 'git rm unwanted-bits'),你去好

不要忘記真空您的出路(git gc --prune=...git repack