Подтвердить что ты не робот

Hg: как я могу направить вновь созданную ветку обратно в центральный репозиторий?

Я клонировал центральный репозиторий через

hg clone my_project my_project_1

то после переключения на вновь созданный репо я отмечен как новая ветвь

hg branch v1

Внутри нового клона я выпустил

hg ci -m "branch created"

но когда я попытался вернуть изменения в исходный репозиторий, который я клонировал из Я получил эту ошибку:

abort: push creates new remote branches: v1!

Как я могу вставить ветку в исходный репозиторий? Правильно ли я делаю попытку вставить ветку в исходное репо? Я просто хочу иметь централизованный репозиторий, который будет содержать ветки и из которых я могу проверить ветки. Какой лучший способ справиться с этой проблемой? Спасибо.

4b9b3361

Ответ 1

Это зависит от версии Mercurial, которую вы используете. Эта команда использовалась hg push -f ... или hg push --force ..., чтобы принудительно создать новую ветку в удаленном репозитории (обычно это нормально).

Однако использование -f также позволяет создавать новые главы в удаленном репозитории (обычно не ОК), поэтому текущие версии Mercurial (1.6 и выше) имеют параметр --new-branch для hg push, который позволяет вам создавать ветку, но не создавать новую голову, поэтому команда:

hg push --new-branch

Вы также можете ограничить нажатие только веткой, с которой вы работаете, с флагом -b, поэтому:

hg push --new-branch -b v1