我被帶到版本控制項目,以前沒有在版本控制。停止git歷史記錄,然後再重新組合在一起
沒有想到,我將所有文件添加到存儲庫,並開始跟蹤它,只要我開始工作。
現在版本庫非常龐大,無法推送到git hub。所以我開始刪除所有過多的文件,並使用git filter-branch使用此命令從歷史記錄中消除它們。
sudo git log --all --pretty=format: --name-only --diff-filter=D | sort -u | while read -r line; do sudo git filter-branch -f --tree-filter "rm -rf { $line }" HEAD; done
問題?有太多過多的文件,而且這太長了,彌賽亞可能會在完成之前返回,我需要迅速將它提交給github。
所以加快的過程中,我看到了,我可以只犯一個孤兒分支
git checkout --orphan <new-branch-name>
所以剛拿到移動最新的文件,我很樂意做的是推動眼前這個承諾github,繼續運行清理操作,然後在完成後將兩個分支重新粘在一起。
這樣
1-----10
1a------Xa (1a = 10)
變爲
1-----10-1a------Xa
或可能
1------10------Xa
因此,在年底,我們從字面上保存所有的歷史。
這可能嗎?我處於緊張時期,不想失去一切。
通過「過多的文件」,你的意思是大的二進制文件? – Makoto
大部分是,但也有一些代碼文件。 –
所有已被刪除,只是不是從存儲庫,並過濾器分支正在永遠 –