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,然後同步。此外,源和目標倉庫都必須被檢查出來,並且沒有提交的更改。
- 在我被告知,這個方法不保留一個文件的所有歷史記錄,如果它被重命名,尤其是當複製/移動文件有一個漫長而充滿分支的歷史。然而,這從未在實際使用中引起問題對我來說。要知道,複製或移動文件時,您可能無法複製它的全部歷史。
評論沒有發現