Внесіть зміни до іншої гілки, ніж поточно перевірена гілка, із підривною роботою


115

Я працював над кодом, перевіреним з лінії розробки, і виявив, що внесені зміни можуть призвести до змін, і їх потрібно перенести в експериментальну гілку, перш ніж перейти до основного дерева розробників. Однак у мене не перевірено експериментальну галузь, і я не хочу втрачати зміни, які вже були внесені.

Чи є спосіб змінити робочу папку в іншій гілці, ніж спочатку перевірено?

Відповіді:


129

Спершу слід створити гілку із відомого sourceURL(це буде ваша «лінія розвитку», яку ви згадали у питанні):

svn copy sourceURL branchURL

Потім перейдіть до цієї гілки:

svn switch branchURL

І введіть свої зміни:

svn commit

55

Ви можете це зробити в TortoiseSVN так:

  • Клацніть правою кнопкою миші по каталогу, де є зміни, які ви хочете відділити. Він не повинен бути коренем сховища, менше дублювати таким чином;
  • Виберіть TortoiseSVN -> " Відділення / тег ... ";
  • Встановити URL : "svn: // хост / сховище / FooBar / відділення / FooBarBranchName";
  • Переконайтесь, що вибрано [*] Робочу копію . Це забезпечить внесення змін;
  • Повідомлення журналу : "Експериментуйте з мухами :)";
  • Необов’язково: Поставте галочку [*] Переключити робочу копію на нову гілку / тег . Це корисно, якщо ви плануєте продовжувати працювати над новою галуззю. Хоча ви також можете перейти на нього пізніше.
  • Спробуйте знайти кнопку ОК . Підказка: вона розташована в нижній частині вікна по центру.

Насолоджуйтесь!


Що ви маєте на увазі під "не повинно бути коренем сховища, менше дублювати таким чином"?
— thezakzak

Я рекомендую не вибирати кореневу папку з усіма невідповідними папками, які не підлягають зміні у гілці. Пізніше буде легше злити (меншу) гілку назад до стовбура.
— Дж. Поллак

У моєму випадку введення лише цієї папки спричинило проблеми, оскільки програмне забезпечення також залежить від суперпапок. Я думаю, що це найчастіше так. Я думаю, що для більшості випадків використання краще просто зробити цілу справу, тому рекомендується виконувати завдання з кореня.
— ikku100

@ ikku100, якщо в цих надпапках не буде змін, як це буде мати значення?
— simpleuser

Це може бути через те, що згодом люди можуть вносити зміни там, але, мабуть, ви можете перевірити правильність перегляду суперпапки, а потім перевірити відділення для папки. Я думаю, що це більше роботи, ніж просто вчинення супердіру.
— ikku100

8

Ви можете створити нову гілку безпосередньо зі свого робочого каталогу та переключити робочий каталог на цю гілку.

Команди є svn copyіsvn switch

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.