首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在mercurial中从历史记录中删除大文件?

如何在mercurial中从历史记录中删除大文件?
EN

Stack Overflow用户
提问于 2012-04-11 17:26:29
回答 1查看 4.5K关注 0票数 34

我刚刚创建了一个mercurial存储库,它是从其他存储库的异构生态系统中创建的。在我把它发布给我的同事之前,我想尽可能地清理它。为此,我想从历史中完全删除一些大的旧文件(假装它们从来不存在),这样repo就会更小。

使用mercurial可以做到这一点吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-04-11 20:58:54

查看convert扩展,特别是--filemap选项。

通过将以下内容添加到mercurial.ini来启用

代码语言:javascript
运行
复制
[extensions]
convert =

创建要排除的文件的映射:

代码语言:javascript
运行
复制
exclude path/to/file1
exclude path/to/file2

然后转换repo:

代码语言:javascript
运行
复制
hg convert srcrepo destrepo --filemap <map>

请注意,Mercurial 2.1.1中存在一个bug,导致上述命令出错:

代码语言:javascript
运行
复制
initializing destination destrepo repository
abort: invalid mode ('r') or filename

只需添加--splicemap <nonexistent file>选项即可解决此问题。

票数 35
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10103227

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档