簡體   English   中英

如何從 mercurial 中的歷史記錄中刪除大文件?

[英]How do you remove big files from history in mercurial?

我剛剛創建了一個 mercurial 回購協議,該回購協議是從其他回購協議的異構生態系統中創建的。 在我將它發布給我的同事之前,我想盡可能地清理它。 為此,我想從歷史記錄中完全刪除一些大的舊文件(假裝它們從未存在過),這樣 repo 就會更小。

mercurial 這可能嗎?

檢查convert擴展,特別是--filemap選項。

通過將以下內容添加到mercurial.ini來啟用:

[extensions]
convert =

創建 map 個要排除的文件:

exclude path/to/file1
exclude path/to/file2

然后轉換回購:

hg convert srcrepo destrepo --filemap <map>

請注意,Mercurial 2.1.1 中存在一個錯誤,導致上述命令出錯:

initializing destination destrepo repository
abort: invalid mode ('r') or filename

只需添加--splicemap <nonexistent file>選項即可解決問題。

暫無
暫無

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

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