好的,当我年轻的时候,我把重要的大文件(比如资源文件,dll等)放在我的mercurial回购站里。我发现它的大小是如此之大,我不能轻易推入到bitbucket,删除历史上的文件以节省一些空间在mercurial
任何方式删除这个文件历史记录容易?
我把所有这些文件放在/ res和/ dll路径中。
编辑:
这是一个解决方案,但它会删除历史记录的一部分,因此也许有更好的解决方案。 Mercurial Remove History
好的,当我年轻的时候,我把重要的大文件(比如资源文件,dll等)放在我的mercurial回购站里。我发现它的大小是如此之大,我不能轻易推入到bitbucket,删除历史上的文件以节省一些空间在mercurial
任何方式删除这个文件历史记录容易?
我把所有这些文件放在/ res和/ dll路径中。
编辑:
这是一个解决方案,但它会删除历史记录的一部分,因此也许有更好的解决方案。 Mercurial Remove History
你最好的办法是使用转换扩展,但警告你会得到一个完全不同的回购结束。每个哈希将会不同,每个克隆的人都需要删除他们的克隆并重新克隆。
这就是说,这里就是你要做的:
创建一个名为filemap.txt
一个filemap文件,其中包含:
exclude res
exclude dll
,然后运行这个命令:
hg convert --filemap filemap.txt your-source-repository your-destination-repository
例如:
hg convert --filemap filemap.txt /home/you/repos/bloatedrepo /home/you/repos/slenderrepo
这会让你得到一个全新的回购,除了/ res和/ dll中任何文件的历史记录外,它都具有所有历史记录,但就mercurial(和bitbucket)而言,它将成为一个新的无关回购。
重复与http://stackoverflow.com/questions/1898600/cleaning-out-a-mercurial-repository – 2011-05-17 09:57:21