/ / SVN - ako aplikovať zmenu v kmeni na všetky pobočky - svn, merge

SVN - ako aplikovať zmenu v trupu na všetky pobočky - svn, merge

Som začiatočník v SVN.Mám štruktúru adresárov SVN takto:

|-trunk
|-file1.php
|-file2.php
|-branches
|-branch_1
|-file1.php
|-file2.php
|-branch_2
|-file1.php
|-file2.php

V kufri mám hlavnú verziu môjhoaplikácie. Mám dve pobočky pre rôznych klientov, ktoré majú zmeny iba v niektorých súboroch. Keď nájdem nejakú základnú chybu, opravím ju v kufri. Napríklad som upravil file1.php v trunk adresár. Chcem aplikovať zmeny v názvoch súborov file1.php vo všetkých odvetviach.

Som trochu zmätený. V Ovládanie verzie s Subversion Našiel som nasledujúce vysvetlenie.

Zásobník Subversion má špeciálne dizajnu. Keď skopírujete adresár, vy nemusíte sa obávať úložisko rastúce obrovské - Subversion nekopíruje žiadne údaje. Namiesto toho vytvorí nový adresár vstup, ktorý ukazuje na existujúci strom.

Takže keď som vykonal zmenu súboru trunkfile1.php bude automaticky použitý na druhú file1.php ako som urobil žiadne zmeny v týchto súboroch v branches adresár.

Ako môžem použiť zmeny z telefónneho adresára na všetky pobočky? Snažil som sa používať svn merge ako toto:

svn merge -r 31:32 http://mysvnserver.com/project/branches/branch_1

ale neurobil som žiadne zmeny (svn diff -r 31:32 vráti všetky zmeny, ktoré som vykonal.)

odpovede:

10 pre odpoveď č. 1

Ak chcete použiť zmenu z kufra na pobočku_1, príkaz na zlúčenie musí určiť, kam má byť rozdiel z, a potom zadajte cieľ, na ktorý sa má zlúčenie použiť:

cd branch_1
svn merge -r 31:32 http://mysvnserver.com/project/trunk .
svn diff   # confirm that the only diff is your change to file1.php
svn commit

2 pre odpoveď č. 2
cd workingcopy
svn merge -r 31:32 http://mysvnserver.com/project/trunk branches/branch_1
svn merge -r 31:32 http://mysvnserver.com/project/trunk branches/branch_2
svn commit -m "Merged r32 into branches"

0 pre odpoveď č. 3

skúste:

svn merge -r 31:32 http://mysvnserver.com/project/trunk branch_1

kde branch_1 je váš miestny pracovný adresár pobočky. To znamená, že najprv máte zdrojovú adresu a potom cieľ, ktorý musí byť lokálny.