恐怕我找不到像這種特殊情況的東西。如何從git存儲庫中刪除舊的歷史記錄?
我有一個有很多歷史的git倉庫:500多個分支,500多個標籤,回到2007年中期。它包含約19,500次提交。我們希望在2010年1月1日之前刪除所有歷史記錄,以使它更小並且更容易處理(我們會在歸檔存儲庫中保存完整的歷史記錄副本)。
我知道我希望成爲新存儲庫根目錄的提交。然而,我不能找出正確的git mojo來截斷回購從那個提交開始。我猜
的一些變種git filter-branch
涉及移植物將是必要的;可能還需要對待我們要分開保存的200多個分支中的每一個,然後將回購補丁一起回收(我需要知道如何執行)。
有沒有人做過這樣的事情?如果有問題,我已經得到了git 1.7.2.3。
如今,它似乎是「git的過濾分支 - --all」 ... – aanno 2012-12-18 15:01:55
好,營造出「的.git /信息/移植文件和過濾器分支後,我仍然需要一個」 git的克隆 - - 沒有本地 - 無硬鏈接「的副本(在此之前製作所有本地跟蹤分支)。簡單地刪除'.git/info/grafts'並不能解決問題! – aanno 2012-12-18 16:18:51
你可能想,當你想縮小到交叉檢查http://stackoverflow.com/questions/7654822/remove-refs-original-heads-master-from-git-repo-after-filter-branch-tree-filte您的存儲庫大小。 – aanno 2012-12-20 08:08:09