Vincent Lammens

Terug

SVN Cheat Sheet

Basics

Een Repo uitchecken

$ svn co https://svn.server/path/to/repo/

(om een branch uit te checken, kan je bvb /branches/mijn-branch/ aan de repository url toevoegen)

Bestanden toevoegen

$ svn add mijnbestand.txt mijnmap/

(Bij het toevoegen van een map, worden ook alle bestanden in die map toegevoegd)

Veranderingen commiten

$ svn commit -m "Beschrijving van de veranderingen"

branches

Een branch maken

$ svn copy ^/trunk ^/branches/test-branch

hierna kan je deze branch uitchecken

Een branch bijwerken met veranderingen uit de trunk

$ svn merge ^/trunk 

De branch mergen in de trunk

$ svn up              # om zeker te zijn dat de huidige branch up to date is
$ svn merge ^/trunk   # de huidige trunk in de branch mergen. 
$ svn commit -m "Laatste merge van trunk in test-branch" # laatste commit van de branch
$ cd ../project-trunk # naar een working copy van de trunk gaan
$ svn up              # laatste veranderingen van de trunk binnenhalen 
$ svn merge ^/branches/test-branch
$ svn commit -m "Branch test-branch terug in de trunk gemerged."

Branch verwijderen

$ svn delete ^/branches/test-branch

Script om automatisch te updaten

REMOTE_REPO="https://svn.server/pad/naar/repo"
LOCAL_REPO="/pad/naar/working/copy"

REMOTE_REV=`svn info $REMOTE_REPO | grep '^Revision:' | awk '{print $2}'`
LOCAL_REV=`svn info $LOCAL_REPO | grep '^Revision:' | awk '{print $2}'`

if [ $REMOTE_REV -eq $LOCAL_REV ]; then
    exit 0;
else
    # Run your commands here.
    cd $LOCAL_REPO
    svn up
fi

je moet wel zelf het repository in de locale working copy map uitchecken. Daarna kan je dit script met een cronjob laten draaien zodat hij automatisch update als er veranderingen zijn.

Apache en mod_dav_svn (svn server over http(s))

Ignore property

Soms is het nodig dat een bepaalde map of bestand niet tot het versiebeheer behoort, bvb de map met gecompileerde bestanden:

om bvb de map “bin” en het bestand “ik-word-genegeerd.txt” te negeren:

svn propedit svn:global-ignores .

Dat opent een texteditor, daarin zet je:

bin
ik-word-genegeerd.txt

en sla op.