簡體   English   中英

如何清理遠程GIT存儲庫?

[英]How to clean a remote GIT repository?

我有一個托管的GIT存儲庫,可用磁盤空間有限,但與RedMine系統連接。 我正在打包一些軟件並推送和拉動存儲庫,我的空間已經用完了。 現在我需要清理(需要注意包裹)。 考慮到我無法重新創建存儲庫(它與RedMine的鏈接過於嚴格),如何從遠程存儲庫歷史記錄中刪除這些包?

這就是為什么你應該考慮不使用VCS(版本控制系統),如Git(DVCS)或任何其他VCS進行打包和發布管理。

請參閱最佳實踐以將.jar文件存儲在VCS(SVN,Git,...)中

Nexus這樣的外部工件庫更適合,特別是在清理和刪除軟件的舊打包版本時。


我不知道如何保留repo和RedMine系統之間的鏈接的同時更改repo的Git歷史中的任何內容:任何更改都將觸發新的SHA1引用。

您可以使用git rebase -i將一些提交“壓縮”在一起,這樣中間體就不再存在於存儲庫中,然后git push -f送到服務器上。 但如果其他人使用相同的存儲庫,則變基會導致問題。

此外,原始修訂和與它們相關聯的文件實際上只有在完成垃圾收集后才會從存儲庫中刪除(我認為你不能遠程執行,但它應該自動發生) 並且不再從reflog中引用它們(條目在默認情況下保留90天)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM