我想刪除所有提交歷史,但保持代碼處於當前狀態。如何刪除github中的所有提交歷史記錄?
因爲在我的提交歷史中,有太多未使用的提交。
我該怎麼辦?
有沒有任何git命令可以做到這一點?
git filter-branch ?
git rebase ?
...
我的代碼在github.com上的主機。
我想刪除所有提交歷史,但保持代碼處於當前狀態。如何刪除github中的所有提交歷史記錄?
因爲在我的提交歷史中,有太多未使用的提交。
我該怎麼辦?
有沒有任何git命令可以做到這一點?
git filter-branch ?
git rebase ?
...
我的代碼在github.com上的主機。
刪除.git
文件夾可能會導致您的git存儲庫出現問題。如果你想刪除所有提交的歷史,但保持代碼在當前狀態下,它是很安全的做如下所示:
結帳
git checkout --orphan latest_branch
添加所有文件
git add -A
提交更改
git commit -am "commit message"
刪除分支
git branch -D master
命名當前分支掌握
git branch -m master
最後,力更新你的資料庫
git push -f origin master
PS:這會不會讓你的舊提交歷史周圍
如果您確定要刪除所有提交歷史記錄,只需刪除項目根目錄下的.git
目錄(請注意它已隱藏)。然後在同一文件夾初始化一個新的存儲庫,並將其鏈接到GitHub的庫:
git init
git remote add origin [email protected]:user/repo
現在提交您的當前版本的代碼
git add *
git commit -am 'message'
終於迫使更新到GitHub的:
git push -f origin master
但是,我建議在執行這些步驟之前備份歷史記錄(存儲庫中的.git
文件夾)!
我可以在此之後使用分叉存儲庫執行請求嗎? – rraallvv
的確很棒。 :) 0.克隆:'git clone https:// github.com/blahblah/blahblah' :) – pidosaurus
@rraallvv不,你會說:*沒有什麼可比較的,master和x分支有完全不同的提交歷史。當您強制推送時,Github上的拉取請求會自動關閉 – NoNameProvided