2013-04-03 96 views
0

這裏刪除文件是我的情況:Permanentely從一個Git倉庫,同時保留歷史

我有以下佈局的git倉庫

myrepo/ 
myrepo/index 
myrepo/data/data01 
myrepo/data/data02 
myrepo/data/data03 
... 

我有幾百款,每個塗改的索引文件並添加一個數據文件。現在,存儲庫已經變得相當龐大,我希望完全擺脫數據文件,不僅僅是從我的頭上移除它們,而且還從元數據中移除它們,從而減少了存儲庫的大小。但是我想這樣做,保留我的提交的其餘部分(索引的修改,同時添加數據)。那可能嗎?

回答

0

我自己找到了答案github。這裏是必要的命令:

git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch data/*' --prune-empty --tag-name-filter cat -- --all 
rm -rf .git/refs/original/ 
git reflog expire --expire=now --all 
git gc --prune=now 
git gc --aggressive --prune=now 
相關問題