====== SVN ====== ===== svn ignore mit mehreren Dateien ===== Um mehrere Dateien komfortabel zu den svn:ignore Properties hinzuzufügen gibt es den Befehl svn propedit svn:ignore . Damit öffnet sich ein Editor in dem man die Eigenschaften bearbeiten kann. ===== alle "unversioned" Dateien löschen ===== svn-clean oder svn status | grep ^\? | cut -c9- | xargs -d \\n rm -r ===== alle "unversioned" Dateien hinzufügen ===== Um alle Dateien zum Repository hinzuzufügen, die noch nicht unter Versionskontrolle stehen, kann man add mit dem Paramter --force benutzen. svn add --force . ===== .svn rekursiv löschen ===== rm -rf `find . -type d -name .svn` ===== einzelne Dateien von Commit ausschließen ===== Um einzelne Dateien oder Zeichnisse von einem Commit auszunehmen, kann man sie mit grep und awk svn st | egrep -v "PATTERN1|PATTERN2" | awk '{print $2}' | xargs svn ci oder nur mit awk svn st | awk '/PATTERN1/||/PATTERN2/ {print $2}' | xargs svn ci herausfiltern. ===== Externe Repositories einbinden ===== Um ein externes SVN-Reposistory als svn external in dem Ordner unterhalb des aktuellen Pfades einzubinden: svn propset svn:externals ' http:////trunk' . Wichtig sind dabei die Anführungszeichen und der Punkt. Der Ordner wird dabei automatisch angelegt. ===== Binärdatei (z.B. PDF) als Text erkannt ===== Um Subversion das Erraten des Dateityps (binär/Text) abzunehmen, kann man svn in ~/.subversion/config folgendes angeben: enable-auto-props = yes sowie [auto-props] # set PDF always as binary *.pdf = svn:mime-type=application/pdf ===== svn diff in Farbe ===== Um die Ausgabe von svn diff in Farbe anzuzeigen, die Datei ~/.subversion/config bearbeiten, so dass colordiff benutzt wird: diff-cmd = colordiff Damit svn diff | less weiter wie gewohnt funktioniert, sollte man noch in der ~/.bash_aliases alias less='less -R' setzen. {{tag>Coding}}