Jak utworzyć gałąź w SVN?

Jak utworzyć gałąź w SVN?

Author: bahrep, 2008-08-05

9 answers

[[7]}rozgałęzianie w Subversion jest ułatwione dzięki bardzo lekkiemu i wydajnemu kopiowaniu.

Rozgałęzianie i tagowanie są skutecznie takie same. Wystarczy skopiować cały folder z repozytorium do innego miejsca w repozytorium za pomocą polecenia svn copy.

Zasadniczo oznacza to, że kopiowanie folderu jest zgodne z konwencją - niezależnie od tego, czy jest to kopia zapasowa, znacznik, gałąź czy cokolwiek innego. W zależności od tego, jak chcesz myśleć o rzeczach (zwykle w zależności od tego, które narzędzie SCM masz używane w przeszłości) musisz skonfigurować strukturę folderów w repozytorium, aby wspierać swój styl.

Typowe style to mieć kilka folderów na górze repozytorium o nazwie tags, branches, trunk, itd. - pozwala na skopiowanie całego trunk (lub podzbiorów) do folderów tags i / lub branches. Jeśli masz więcej niż jeden projekt, możesz chcieć replikować ten rodzaj struktury pod każdym projektem:

Przyzwyczajenie się do tej koncepcji może trochę potrwać - ale działa - po prostu upewnij się, że (i twój zespół) są jasne co do konwencji, które masz zamiar używać. Dobrym pomysłem jest również posiadanie dobrej konwencji nazewnictwa - czegoś, co powie Ci, dlaczego branch / tag został stworzony i czy nadal jest odpowiedni-rozważ sposoby archiwizacji gałęzi, które są przestarzałe.

 328
Author: Ronnie,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-07-02 18:44:15

Utwórz nową gałąź używając polecenia svn copy w następujący sposób:

$ svn copy svn+ssh://host.example.com/repos/project/trunk \
           svn+ssh://host.example.com/repos/project/branches/NAME_OF_BRANCH \
      -m "Creating a branch of project"
 577
Author: sparkes,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-09-13 22:46:58

Jeśli repo jest dostępne przez https, możesz użyć tego polecenia do rozgałęzienia ...

svn copy https://host.example.com/repos/project/trunk \
       https://host.example.com/repos/project/branches/branch-name \
  -m "Creating a branch of project"
 27
Author: Dave,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-02-10 20:36:21
svn cp /trunk/ /branch/NEW_Branch

Jeśli masz jakieś lokalne zmiany w trunku, użyj Rsync, aby zsynchronizować zmiany

rsync -r -v -p --exclude ".svn" /trunk/ /branch/NEW_Branch
 24
Author: Parag Bafna,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-09-03 09:14:12

Normalnie skopiowałbyś go do svn + ssh://host. example. com / repos/project/branches / mybranch, aby móc zachować kilka gałęzi w repozytorium, ale twoja składnia jest prawidłowa.

Oto kilka porad na temat Jak skonfigurować układ repozytorium .

 14
Author: pix0r,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-08-05 12:40:31

Załóżmy, że chcesz utworzyć gałąź z nazwy truna (jako " TEST") następnie użyj:

svn cp -m "CREATE BRANCH TEST" $svn_url/trunk $svn_url/branches/TEST
 12
Author: Chamly Idunil,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-02-01 21:37:29

Jeśli w ogóle planujesz połączyć swoją gałąź, sugeruję spojrzeć na to:

Svnmerge.py

Słyszałem, że Subversion 1.5 buduje więcej śledzenia połączeń w, nie mam doświadczenia z tym. Mój projekt jest na 1.4.x i svnmerge.py to ratownik życia!

 11
Author: basszero,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-01-28 04:33:56

Wskazówka dla nowych użytkowników SVN; może to pomóc w szybkim uzyskaniu poprawnych adresów URL.

Uruchom svn info, Aby wyświetlić przydatne informacje o bieżącej gałęzi pobranej.

Adres URL powinien (jeśli uruchamiasz svn w folderze głównym) dać ci adres URL, z którego chcesz skopiować.

Aby przełączyć się do nowo utworzonej gałęzi, użyj polecenia svn switch:

svn switch http://my.repo.url/myrepo/branches/newBranchName
 10
Author: chim,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-02-01 21:43:38
  • Utwórz nowy folder poza bieżącym projektem. Możesz nadać mu dowolną nazwę. (Przykład: masz zamówienie dla projektu o nazwie "Personalizacja". I ma wiele projektów, takich jak "Project1", "Project2"....I chcesz utworzyć gałąź "Project1". Więc najpierw otwórz "dostosowanie", kliknij prawym przyciskiem myszy i utwórz nowy folder i nadaj mu nazwę "Project1Branch").
  • Kliknij prawym przyciskiem myszy na "Myproject1"....TortoiseSVN - > Branch / Tag.
  • Wybierz kopię roboczą.
  • Otwórz przeglądarka....Tuż obok "do URL".
  • Wybierz dostosowywanie.....kliknij prawym przyciskiem myszy, a następnie Dodaj Folder. i przejść przez folder, który został utworzony. Tutaj jest "Project1Branch". Teraz kliknij przycisk OK, aby dodać.
  • / Align = "center" bgcolor = "# e0ffe0 " / cesarz Chin / / align = center /
  • ponownie przejdź do projektu, którą gałąź chcesz utworzyć. Kliknij prawym przyciskiem myszy torotoisesvn -> branch / tag. Następnie wybierz opcję kopia robocza. Możesz podać adres URL jako nazwę swojej gałęzi. like {your IP adres/svn/AAAA/Customization / Project1Branch}. Możesz ustawić nazwę w adresie URL, aby utworzyć folder tylko o tej nazwie. Jak {Twój adres IP/svn / AAAA/Personalizacja / Project1Branch / MyProject1Branch}.
  • Naciśnij przycisk OK. Teraz możesz zobaczyć logi ...twoja kopia robocza będzie przechowywana w Twoim oddziale.
  • Teraz możesz się wymeldować...i pozwolić Ci cieszyć się swoją pracą. :)
 5
Author: Sonu Gupta,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-02-01 21:41:15