Зафиксировать изменения в другой ветви, чем в текущей извлеченной ветви с subversion
Я работал над кодом, проверенным из строки разработки, и обнаружил, что внесенные изменения могут быть нарушающими изменениями и должны быть перемещены в экспериментальную ветвь перед фиксацией в главном дереве разработки. Однако у меня нет экспериментальной ветви, и я не хочу потерять изменения, которые уже были сделаны.
есть ли способ зафиксировать изменения в рабочей папке в другой ветви, чем первоначально проверено?
3 ответов
вы должны создать ветку из известного sourceURL
(это будет ваша "линия развития", которую вы упомянули в вопросе) сначала:
svn copy sourceURL branchURL
затем переключитесь на эту ветку:
svn switch branchURL
и зафиксируйте свои изменения:
svn commit
вы могли бы сделать это в TortoiseSVN так:
- щелкните правой кнопкой мыши на каталоге, где находятся изменения, которые вы хотите ветвить. Это не должен быть корень репозитория, тем более дублировать таким образом;
- выберите в TortoiseSVN ->"ответвление/метку...";
- Set URL: "svn: / / host / repository/FooBar / branches/FooBarBranchName";
- убедитесь, что [*] выбрана рабочая копия. Эта воля убедитесь, что изменения внесены;
- сообщение журнала: "экспериментируя с мухами :)";
- Дополнительно: Галочку [*] переключить рабочую копию на новую ветку/тег. Это полезно, если вы планируете продолжить работу над новой веткой. Хотя вы можете переключиться на него позже.
- попробуйте найти OK. Подсказка: он находится в нижней части окна по центру.
наслаждайтесь!
вы можете создать новую ветвь непосредственно из своего рабочего каталога и переключить рабочий каталог на эту ветвь.
команды
svn copy
и svn switch