说,如果我们有一个称为main
一个项目,然后我们有一个项目,是analytics
,并猛砸,我们在analytics
工作目录,并意外地推到main
远程仓库,将在analytics
所有文件添加到main
项目,它是可逆的吗?如果我们将错误的项目推送到另一个远程存储库,会发生什么情况?
回答
你会从水银得到一个投诉,并推动将被中止。它看起来像这样:
# create main repo:
% hg init main
% touch main/a.txt
% hg -R main commit --addremove -m main
adding a.txt
# create analytics repo
% hg init analytics
% touch analytics/a.txt
% hg -R analytics commit --addremove -m analytics
adding a.txt
# try the push:
% hg -R analytics push main
pushing to main
searching for changes
abort: repository is unrelated
水银知道,如果两个储存根据其根节点的是相关。也就是说,如果存储库A和B共享共同的根节点,则它们是相关的。
Mercurial如何知道?比如说,如果两个项目只有一个文件是'index.html',那么它如何知道哪个项目是哪个项目?或者,如果两个项目都碰巧有一个文件在相同的路径,如'config/database.yml' – 2010-08-29 18:15:52
我不确定这个评论 - 我只是尝试了两个本地回购,并从CLI没有警告。我知道TortoiseHg会发出一些警告,但可以通过选择“强制推送”选项来避免这些警告。 – dls 2010-08-29 18:16:10
有趣的是,如何知道他们是不相关的?是否通过使用转数(长整数)来检查它们来自同一个“根”?事实上,我可以推动John的机器,或推动分级,推动测试,或从测试推到分级,看起来可能是任意的。 – 2010-08-29 18:25:29
如果main
是本地存储库,则可导航到main
并执行histedit以删除违规提交。您也可以从基于服务器的main
发出声音,但如果有其他用户创建了克隆,则当他们推到主体时,他们将重新添加更改。
histedit是汞的扩展,没有附带汞捆绑在一起。一旦你安装它,你可以像这样使用它:
> hg histedit <rev>
哪里是违规提交的开始。 Histedit将生成一个提交列表,直到提示。在这个列表中,您可以向histedit表明您想要保留提交,编辑注释或放弃提交。滴应该做的伎俩。
- 1. 如果我们遵循HTML中的错误语法,会发生什么情况
- 2. 推送到远程存储库时出现git推送错误
- 3. 如果我将整数发送到BigQuery字段“string”,会发生什么情况?
- 4. 删除远程分支推送到错误的存储库
- 5. 如果我的IExceptionPublisher引发异常,会发生什么情况?
- 6. 推送到远程Mercurial存储库
- 7. 推送到远程GitHub存储库
- 8. 克隆一些远程分支并将它们推送到新的存储库?
- 9. 如果在另一个实例已经运行的情况下编译了程序,会发生什么情况?
- 10. 将提交从一个存储库推送到另一个存储库
- 11. git - 无法推送到远程,错误'致命:不是一个git存储库'
- 12. 如何将推送限制到特定的远程存储库?
- 13. 如果MySQL数据库未关闭,会发生什么情况?
- 14. 如果我搬到另一个托管服务,我的电子邮件会发生什么情况?
- 15. 如果堆栈内存变满,会发生什么情况
- 16. 如何将本地存储库推送到远程使用“SourceTree”
- 17. 为什么不能将我的wordpress目录推入远程github存储库?
- 18. 如果我使用printf(“one \ 0two”),会发生什么情况;?
- 19. TFS - 如果我删除工作区会发生什么情况?
- 20. 如果我不指定targetFramework =“4.0”,会发生什么情况?
- 21. git推送到远程存储库“无法从远程存储库读取”
- 22. 如果我从GITHub的存储库的克隆叉中删除文件夹,会发生什么情况
- 23. 如果未捕获到异常,会发生什么情况?
- 24. 如何将我的git svn配置文件推送到另一个存储库?
- 25. 我们在签名时会发生什么情况?
- 26. 如何在另一个存储库推送到远程后自动更新本地存储库?
- 27. 如果我为不存在的参数调用ParamByName,会发生什么情况?
- 28. 如果我在同一个项目中使用JPA和CMP,会发生什么情况?
- 29. 如果在rootfs上发生内存泄漏,会发生什么情况?
- 30. 我可以在Git中将一个存储库的更改推送到另一个存储库吗?
你为什么不自己尝试一下呢?看看我的答案,看看测试这些东西有多容易:-) – 2010-08-29 18:13:12