1

这是一个关于 mercurial 的问题。

我不是 unix 人,但我在 Mac 上使用 mercurial 和 MacHG 进行开发。昨天我不得不改变我的mac,我刚刚在新的mac上复制了我的项目文件夹和存储库,但现在我无法在mercurial中用它做任何事情。我可以在 xcode 中打开项目并且一切都很好,但是如果我尝试通过终端在 mercurial 中做任何事情,我会得到这个:abort: data/.DS_Store.i@e959df7694ce: no node!

如果我尝试在 MacHG 中做任何事情,我会得到Mercurial reported error number 255: skipping unreadable ignore file '/Users/zakhar/.hgignore': No such file or directory abort: data/.DS_Store.i@e959df7694ce: no node!

我能做些什么?我在哪里可以得到这个 .hgignore 文件?我没有旧的mac了。

4

2 回答 2

4

您收到的有关放入.DS_Store文件.hgignore的建议是您第一次设置该存储库时需要的建议,但是现在它没有帮助。您已经.DS_Store在旧计算机上的存储库中添加了文件并添加了文件覆盖.hgignore

此外,看起来当您将旧计算机中的内容复制到新计算机时,.hg/data/.DS_Store.i文件以及其中可能包含的其他任何内容都.DS_Store没有复制过来。

拖放到新计算机上的终端并执行hg verify. 如果您收到有关丢失文件的通知(看起来您会收到),那么您需要重新复制存储库,或者最好使用hg clone.

于 2010-09-21T18:27:43.453 回答
1

.hgignore 文件告诉 Mercurial,要忽略哪些文件。

只需在提到的位置创建一个 .hgignore 文件并添加以下内容

# use glob syntax.
syntax: glob

*.o
*.so
*.log
*.DS_Store
.DS_Store

请参阅:https ://stackoverflow.com/questions/3714820/mercurial-script-plugin-for-ignore-remove-binary-files/3714858#3714858

此外,您可能希望删除存储库中的所有 .DS_Store 文件:

find . -name .DS_Store -print0 | xargs -0 hg remove
于 2010-09-21T17:26:02.557 回答