hg in --branch
Jul. 30th, 2015 06:52 pmСтранным образом ведёт себя mercurial, когда в репозитории есть бранчи, имена которых оказываются префиксами других бранчей (наприммер: 'dev_2.4', 'dev_2.4_tests', 'dev_2.4_main', 'dev_2.4_main_bugs' -- первое имя является префиксом остальных трёх, третье является префиксом четвёртого).
Параметр --branch команды hg incoming выполняет не сравнение точно сравнение имени бранча, а выбирает все бранчи, имена которых начинаются с указанной строки. Т.е.
проверит (и вытащит, если с --bundle) мне все вышеперечисленные бранчи, а не только сам dev_2.4
Аналогично и команда
вытащит все 4 перечисленных бранча.
Какого-либо ключа для ограничения выборки только точным соответствием имени бранча - не нашёл.
Баг? Мисфича? Или я чего не понял?
Да, я уже сообразил, что при большом желании можно написать скрипт, который проверит все changeset'ы, которые вернёт hg in, составит список нужных и укажет их явным образом. Но это всё же workaround, а не правильное использование правильно спроектированной фичи.
Параметр --branch команды hg incoming выполняет не сравнение точно сравнение имени бранча, а выбирает все бранчи, имена которых начинаются с указанной строки. Т.е.
hg in -b dev_2.4
проверит (и вытащит, если с --bundle) мне все вышеперечисленные бранчи, а не только сам dev_2.4
Аналогично и команда
hg pull -r dev_2.4
вытащит все 4 перечисленных бранча.
Какого-либо ключа для ограничения выборки только точным соответствием имени бранча - не нашёл.
Баг? Мисфича? Или я чего не понял?
Да, я уже сообразил, что при большом желании можно написать скрипт, который проверит все changeset'ы, которые вернёт hg in, составит список нужных и укажет их явным образом. Но это всё же workaround, а не правильное использование правильно спроектированной фичи.