谁能告诉我这个 Mercurial 错误意味着什么?
untracked file in working directory differs from file in requested revision
在进行 hg 获取时发生这种情况:
C:\myapp>hg fetch ssh://hg/myapp-v1
pulling from ssh://hg/myapp-v1
searching for changes
adding changesets
adding manifests
adding file changes
added 93 changesets with 693 changes to 78 files (+1 heads)
updating to 797:0df7dbe7dc06
196 files updated, 0 files merged, 196 files removed, 0 files unresolved
merging with 704:edb7765768c6
abort: untracked file in working directory differs from file in requested revision: 'a/b/c/d.java'
据我所知,此文件 (a/b/c/d.java) 与 .hgignore 中配置的任何路径都不匹配。这个特定文件在两个(myapp 和 myapp-v1)存储库中也是相同的。
我不清楚这是什么意思。 ??
最佳答案
它告诉您在 myapp 存储库的本地工作目录中已经有一个名为 a/b/c/d.java
的文件,但尚未添加(跟踪),并且更新/merge 时 fetch 不愿意覆盖它。
你能做的事情是以太:
- 将
a/b/c/d.java
副本移开,然后进行拉取/更新。之后,将您移动的a/b/c/d.java
与一次获取操作进行比较。
或
hg add a/b/c/d.java
,hg commit a/b/c/d.java
,然后拉取/merge
前者可以工作,因为不再有文件挡路,而后者可以工作,因为您的副本已被跟踪,因此 Mercurial 可以 merge 它们。
此外,您应该考虑停止使用 fetch
。它为您组合了pull
、update
和merge
,但这并不是一种安全的方式。在这种情况下,您的pull
将会成功,并且update
和merge
都会给您提供更多有用的消息。
关于 Mercurial : "untracked file in working directory differs from file in requested revision"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4822129/