Mercurial не знает, есть ли репо или нет - PullRequest
2 голосов
/ 20 ноября 2011

Я в первые дни Mercurial, я сделал домашнее задание Google, но не могу найти решение этой проблемы.

Вот вывод с сервера, который должен объяснить вещи лучше, чем я мог:

david@triton:~/www/triton$ ls -l -a | grep .hg
drwxr-xr-x  4 david david 4096 2011-11-19 17:44 .hg
-rw-r--r--  1 david david    0 2011-11-18 22:23 .hgignore
david@triton:~/www/triton$ hg init
abort: repository . already exists!
david@triton:~/www/triton$ hg serve
abort: There is no Mercurial repository here (.hg not found)!

Я пытаюсь перейти от tortiseHG на Windows-клиенте к этому серверу, но он также жалуется на отсутствие репо.

Какого черта, ребята?

Ответы [ 2 ]

5 голосов
/ 20 ноября 2011

hg init просто проверяет, существует ли каталог .hg, что он явно делает. Попробуйте

$ ls -l .hg
ls: cannot access .hg: No such file or directory
$ mkdir .hg
$ hg init
abort: repository . already exists!

Как этот каталог .hg попал туда? Если вы создали это сами, этого не должно быть. Вы должны были позволить hg init создать его, так как он помещает туда много других вещей. Какой выход вы получаете от hg summary?

1 голос
/ 08 декабря 2011

Это может произойти, если версии Mercurial отличаются между сервером и клиентом.В этом случае вам придется преобразовать репозиторий в более старую версию (или обновить ваш клиент до версии сервера), чтобы решить эту проблему.HTH!

Если вы запустите статистику hg или сводку hg, как сказал R4yan, вы можете увидеть более полезное сообщение об ошибке.Если разница в версии, вы можете увидеть что-то вроде: 'abort: требование' dotencode 'не поддерживается!'

...