【问题标题】:Mercurial update did not ask to merge and overwrote working directoryMercurial 更新没有要求合并和覆盖工作目录
【发布时间】:2013-03-15 20:26:47
【问题描述】:

环境

目前我们没有分支机构或单独的负责人。
我们每个人的个人电脑上都有自己的工作目录(显然)


问题

开发者 A 将提交推送到 BitBucket
开发者 B 尝试进行提交和推送,但由于进行了更改而失败。开发者 B 拉取最新的变更集。
开发者 B 执行更新 ...

此时,当任何文件存在差异时,通常会出现合并弹出窗口。没有这样的弹出窗口,因此覆盖了 Developer B 的工作目录。


问题

有没有办法取回在开发者 B 执行更新之前被覆盖的文件?

【问题讨论】:

  • 他可能换了头,检查是否有你应该合并的隐藏头。
  • 如何判断是否有隐藏头?大约一个月前我们刚刚从 VSS 切换,所以我们对此非常陌生。
  • 如果你碰巧在使用eclipse,你可以经常查看本地历史来找到你之前的更改。
  • 好的……我已经修好了。显然,工作目录被切换到最新的拉动,然后它创建了一个隐藏的头,正如@nlucaroni 建议的那样。我将它与本地合并回来,一切都在那里!所以如果你想用你所说的写一个答案,我会接受的。
  • 我认为您需要在此处处理术语。 “工作目录”与您的文件所在的文件夹相关(在 .hg 目录之外),通常用于尚未提交的更改的上下文中。当您说“覆盖工作目录”时,通常意味着“尚未提交的更改被覆盖(又名丢失)”。

标签: mercurial tortoisehg bitbucket visualhg


【解决方案1】:

在从 repo 中提取时,您可能已经将头部设置为隐藏了开发人员正在处理的另一个分支的特定变更集。要查看头像列表使用hg heads,然后您可以手动合并它们,hg merge -r <NUM1> -r <NUM2>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-08-10
    • 1970-01-01
    • 2011-03-14
    • 1970-01-01
    • 2011-03-25
    • 2015-01-23
    相关资源
    最近更新 更多