HGCP是提供水银跨reposititory复制和移动功能的工具。
开发者评论
当重构的包,我有时会发现需要的一些文件从一个Mercurial库,同时保留他们的历史复制到另一个。虽然这并不难做到,一旦你知道怎么回事,它不是一个简单的操作。所以,我创建HGCP。从源代码回购将文件复制到dest-回购变得非常容易。下面是几个例子:
- HGCP源回购/功能/古怪-feature.txt DEST回购/(此副本源回购/功能/古怪,feature.txt到dest-回购/功能/古怪,feature.txt)
- HGCP -x提供源回购/功能/古怪-feature.txt DEST回购/(此剥去功能子路径,复制源回购/功能/古怪,feature.txt到dest-回购/古怪,feature.txt )
- HGCP -x提供源回购/功能/古怪-feature.txt DEST回购/插件(复制源回购/功能/古怪,feature.txt到dest-回购/插件/古怪,feature.txt)
另外还有一点移动,而不是仅仅将其复制文件,一个hgmv命令。它的工作原理,否则完全一样的HGCP命令。
安装
HGCP可以使用easy_install的安装:HGCP的easy_install
注意的人谁不喜欢这个功能
简而言之:这没问题。不要使用它。
你并不需要看很难找到如何做一个历史,保留跨库复制的许多要求。不幸的是,我见过最答复而无益的。下面是一些回应我见过的:
- 这不是一个支持的工作流程。
- 如果你需要这个,你不打算你的资料库的布局非常好。
- 你不应该需要经常这样做
- 跨库文件复制不是一个定义良好的操作。
- 只需复制没有历史文件,并把记在更新日志。
- 广告nauseum
基本的问题,所有的这些反应是这样的:人们需要复制或存储库之间移动文件。颠覆鼓励我们把所有的项目在同一个存储库,所以跨项目的文件副本是微不足道的。像水银DVCS鼓励我们把每一个项目在一个单独的存储库,但未能提供一个简单的方法来重构项目。如果你发现自己不知道为什么有人会需要做到这一点,你是在同一条船上与不知道为什么有人抱怨说,重命名或移动文件是一个麻烦铁杆CVS用户,并重新命名的目录是...好,可笑的。移动周围的事物是重构的一部分。项目拆分和合并所有的时间。就我而言,跨库复制和移动是一个基本特征。
HGCP没有做任何事情,你不能做手工,如果你想要的。基本上,它使用水银转换扩展。 HGCP干脆写一个filemap你,并执行汞命令的正确顺序。它还允许你指定在一个更自然的方式路径。
补丁和修复
我很高兴地接受补丁增强HGCP或修复bug。 。我的目标是保持HGCP尽可能简单,并着眼于跨库工作流程
要求:
- 在Python的
限制:
- 在HGCP只适用于存储在本地文件系统存储库。但愿,这不是一个很大的负担,因为你可以很容易地检查出远程回购协议,使用HGCP,然后同步。此外,源和目标仓库都必须被检查出来,并且没有提交的更改。
- 在我被告知,这个方法不保留一个文件的所有历史记录,如果它被重命名,尤其是当复制/移动文件有一个漫长而充满分支的历史。然而,这从未在实际使用中引起问题对我来说。要知道,复制或移动文件时,您可能无法复制它的全部历史。
评论没有发现