English language
Subversion v Linuxu
Subversion na sourceforge.net
Subversion klient pro KDE
CVS do Subversion
19.03.2007
Subversion
Musíme nainstalovat následující balíčky:
subversion
subversion-devel
kdesvn
Checkout projektu ze serveru sourceforge.net
svn co https://svn.sourveforge.net/svnroot/yourproject yourproject
Takto vypadá struktura adresářů subversion projektu
yourproject/trunk/ ......... Sem ukládají všichni vývojáři co na projektu pracují své finální verze.
yourproject/branches/ ...... Každý vývojář si v tomto adresáři může vytvořit vlastní větev, nezávislou na ostatních.
yourproject/tags/ .......... Sem se ukládají finální verze projektu. V tomto adresáři nemůže vývojář nic měnit. Může jen nakopírovat finální verzi a pokračovat na další verzi projektu ve vlastní větvi (branches)
Subversion klient pro KDE
Subversion klient pro KDE je
kdesvn
http://www.alwins-world.de/programs/kdesvn/
Update, commit, přidání souboru (adresáře), vymazání souboru (adresáře), logy, rozdíly mezi verzemi ... toto vše je v tomto programu jednoduché a intuitivní.
Vytváření větví (Branches) a tagů (Tags).
Větve a tagy se vytvářejí kopírováním.
1. Označíme adresář projektu v trunk subversion adresáři.
2. Klepnem na
Subversion->General->Copy
Napíšem například
branches/yourproject_0_1
pro větev verze 0.1
nebo
tags/yourproject_0_1
pro tag verze 0.1
3. Nyní můžeme pracovat v nové větvi
branches/yourproject_0_1
Případně můžeme použít konzolový příkaz:
svn copy trunk branches/yourproject_0_1 -m "I create new branch"
nebo
svn copy trunk tags/yourproject_0_1 -m "I create new tag"
Mergování
Pokud budeme chtít převést vlastní verzi z větve do kmene (trunk), klepneme na
Subversion->General->Merge...
a zadáme
Source 1: trunk/yourproject
Source 2: branches/yourproject_0_1
Output to: trunk/yourproject
Start with revision: WORKING
Stop with revision: WORKING
Případně můžeme použít konzolový příkaz:
svn merge -r 1:COMMITTED branches/yourproject_0_1 trunk
Subversion na lokálním počítači
Vytvoření nové subversion repository
svnadmin create /path/to/reposImport projektu do repository
svn import /tmp/localproject file:///path/to/repos/svnroot-localproject -m "Initial import"Checkout projektu z repository
V pracovním adresáři např. "/home/username/work/" zadáme následující příkaz:
svn co file:///path/to/repos/svnroot-localproject localproject
V pracovním adresáři vznikne nový adresář "localproject"Vytvoření základních adresářů (trunk, tags, branches)
V adresáři projektu "localproject" zadáme příkaz:
svn mkdir trunk tags branches
svn commit -m "Create normal infrastructure"
CVS do Subversion
Musíme nainstalovat následující balíčky:
cvs2svn
python
rcs
Nyní zadáme do konzole
cvs2svn -s file:///path/to/repos/svnroot-localproject CVSROOT
a checkout-nem tento project ze subversion repository
svn co file:///path/to/repos/svnroot-localproject localproject
Problémy
Jestliže příkaz
svn update
vyhodí chybovou hlášku:
svn: Failed to add directory 'k3dengine': object of the same name is already scheduled for addition
můžeme zkusit probém vyřešit příkazem revert
Subversion->Working copy->Revert current changes
home / cvs