Mercurial: “untracked file in working directory differs from file in requested revision”?

后端 未结 5 1691
梦如初夏
梦如初夏 2021-02-03 16:47

Can anyone tell me what this Mercurial error means?

untracked file in working directory differs from file in requested revision

相关标签:
5条回答
  • 2021-02-03 17:03

    I got around this by running hg update --clean

    0 讨论(0)
  • 2021-02-03 17:03

    Just accept the error dialog then tick Discard local changes, no backup

    And you should be good, it will overwrite any untracked local files...

    0 讨论(0)
  • 2021-02-03 17:12

    If using TortoiseHG you can check the "Discard local changes, no backup" option in the Update window.

    0 讨论(0)
  • 2021-02-03 17:16

    I tried Ry4an's answer (of deleting the file) and it still did not work, so I ran a purge and that got rid of all traces such that it worked after. Just in case somebody is looking for an alternative solution.

    0 讨论(0)
  • 2021-02-03 17:17

    It's telling you you already have a file named a/b/c/d.java in your local working directory of the myapp repo, but it hasn't been added (tracked), and fetch isn't willing to overwrite it when updating/merging.

    Things you can do are ether:

    • Move your copy of a/b/c/d.java out of the way and then do the pull/update. After that compare your moved a/b/c/d.java to the one fetch brings down.

    or

    • hg add a/b/c/d.java, hg commit a/b/c/d.java, and then pull / merge

    The former works because there's no longer a file in the way, and the later works because your copy is tracked so Mercurial can merge them.

    Also, you should consider stopping using fetch. It combines pull and update and merge for you, which is just not a safe way to be. In this case your pull would have succeeded and both update and merge would have given you much more helpful messages.

    0 讨论(0)
提交回复
热议问题