Может ли Mercurial вложиться в подпапку?
Я использовал следующую строку в моем .hgsub
годами:
setup/help = https://my.repo.com/manuals
Это поместит репозиторий с именем "manual" в папку help
внутри другой папки setup
, Итак, моя структура родительского репозитория выглядит так:
.hg
setup
|__help
| |__.hg
|
.hgsub
Это не было проблемой, пока я не обновил Mercurial 4.9 сегодня, теперь он говорит: "путь subrepo содержит недопустимый компонент: setup/help", и я даже не могу зафиксировать основной репозиторий. Mercurial запрещает это сейчас? Есть ли действительный .hgsub
синтаксис, чтобы заставить это работать? Я не хочу двигаться help
быть прямым потомком основной папки проекта. Моя предыдущая версия Mercurial была 4.5, не то чтобы я использовал древние инструменты...
Отслеживание ошибок в соответствии с запросом:
Traceback (most recent call last):
File "mercurial\scmutil.pyo", line 165, in callcatch
File "mercurial\dispatch.pyo", line 367, in _runcatchfunc
File "mercurial\dispatch.pyo", line 1021, in _dispatch
File "mercurial\dispatch.pyo", line 756, in runcommand
File "mercurial\dispatch.pyo", line 1030, in _runcommand
File "mercurial\dispatch.pyo", line 1018, in <lambda>
File "mercurial\util.pyo", line 1670, in check
File "mercurial\commands.pyo", line 4621, in push
File "mercurial\context.pyo", line 277, in sub
File "mercurial\subrepo.pyo", line 164, in subrepo
File "mercurial\subrepo.pyo", line 414, in __init__
Abort: subrepo path contains illegal component: setup/help
abort: subrepo path contains illegal component: setup/help
2 ответа
У меня была такая же ошибка, поэтому я клонировал ртутный репозиторий...
Ошибка была введена в теговой версии 4.9, subrepo.py.
Это было исправлено примерно через месяц, редакция 41583 (87a6e3c953e045d92147925fc71aad7c327fdbfd). Я проверил это на фактической ветви по умолчанию, работает снова!
Таким образом, нет необходимости в записи ошибки, нам просто нужно дождаться следующего релиза.
Насколько вы уверены в отладчике Python? Вы можете запустить команду с --debugger
этот раз.
Вы могли бы видеть вывод как это:
entering debugger - type c to continue starting hg or h for help
--Call--
> /usr/lib64/python2.7/contextlib.py(21)__exit__()
-> def __exit__(self, type, value, traceback):
(Pdb)
Войти c
а также enter
пока вы не увидите ту же трассировку, что и вставленную вами.
Когда вы находитесь на правильной трассировке, вы можете распечатать локальные переменные, используя pp root
, pp util.expandpath(root)
а также os.path.realpath(util.expandpath(root))
, Мы должны быть в состоянии добраться до корня проблемы со значениями этих переменных.
Для выхода из отладчика введите q
а также enter
,