我有一个项目,我使用Bitbucket作为我的HG服务器,但我最近发现,作为一个单独的开发人员,我可以免费使用Fogbugz / Kiln。我想把我的文件移到Kiln但是我不想丢失我的历史。我确信有一个死傻的简单方法,但我只是不知道。我该怎么做?
谢谢!
答案 0 :(得分:11)
创建新的项目仓库,并使用原始仓库的当前副本执行以下操作:hg push new-repo-path
。
然后您将来使用新路径。你可以删除bitbucket repo。
使用Mercurial,所有历史记录都在存储库的每个副本中,包括您的本地副本。
答案 1 :(得分:3)
因为您已经在使用Mercurial。我只是很好奇,不应该在Fogbugz / Kiln上克隆你的存储库就足够了。
hg clone "BitBucket Repo ..."
当然,这不会复制每个存储库的hgrc文件。你需要单独完成。
另一种方法是使用bundle。
hg bundle --all bitbucket.bundle
hg clone bitbucket.bundle my_repo
第三种方法是将bitbucket repo推送或拉出到fogbugz repo。
设置默认值
请参阅:https://www.mercurial-scm.org/wiki/TipsAndTricks。
在此处重现:
可以存储默认的推送URL,当您只键入'hg push'时将使用该URL。编辑hgrc并添加如下内容:
[paths]
default-push = ssh://hg@example.com/path
答案 2 :(得分:0)
其他答案已经解释过,在创建新的空存储库后,您可以使用hg push http://example.com/hg/newrepo
将更改推送到其中。 (请注意,一旦您将一些更改推入其中,它将来只会接受来自相关存储库的更改。)
您似乎还想知道的是,如何配置本地存储库以默认推送到该位置,而无需每次都指定URL。您可以通过编辑存储库的.hg\hgrc
文件中的default location来执行此操作。这是一个文本文件,您可以使用记事本或任何其他文本编辑器打开它。