====== Versionskontrolle ====== ===== Git ===== siehe [[Git]] ===== Subversion (SVN) ===== ==== Proxy verwenden ==== === SVN === == /etc/subversion/servers / ~/.subversion/servers == http-proxy-exceptions = *.myowndomain.com http-proxy-host = proxyaddr.mydomain.com http-proxy-port = 3128 http-proxy-username = userme http-proxy-password = passyou http-compression = no === Squid === == /etc/squid/squid.conf == MKACTIVITY PROFIND CHECKOUT REPORT MERGE ==== Unix ==== * [[http://subversion.apache.org/faq.html]] * [[http://subversion.apache.org/docs/community-guide/|The Subversion Community Guide]] * [[http://svnbook.red-bean.com]] === Installation === == Kommandozeile == # aptitude -y install subversion == mit grafischer Oberfläche == # aptitude -y install rapidsvn === dumme Frage beim ersten Aufruf === Beim ersten Aufruf, wird man immer gefragt, ob SVN das Passwort speichern soll: ----------------------------------------------------------------------- ATTENTION! Your password for authentication realm: Subversion repository can only be stored to disk unencrypted! You are advised to configure your system so that Subversion can store passwords encrypted, if possible. See the documentation for details. You can avoid future appearances of this warning by setting the value of the 'store-plaintext-passwords' option to either 'yes' or 'no' in '/root/.subversion/servers'. ----------------------------------------------------------------------- Store password unencrypted (yes/no)? no Da wir das nicht wollen, machen wir folgendes: # if [ -z "$((egrep -v '^#' ~/.subversion/servers | fgrep -i '[global]') > /dev/null 2>&1)" ] ; then mkdir -p ~/.subversion && echo -e "[groups]\n\n[global]\nstore-passwords=no\n" > ~/.subversion/servers;fi === Hilfe === allgemeine Hilfe anzeigen: # svn help Hilfe zum Befehl "list" anzeigen: # svn list --help === Liste === nur das angegebene Verzeichnis ansehen: # svn --username fritz --password geheim ls "http://svn/pfad/zum/repository/tags/release_20100305/" alles rekursiv ansehen: # svn --username fritz --password geheim ls -R "http://svn/pfad/zum/repository/tags/release_20100305/" === Export === So holt man sich das angegebene Verzeichnis zum anwenden aus dem SVN-Server. **Hier sind keine "''.svn''"-Verzeichnisse drin!** Man kann hiermit also keine Dateien wieder in den SVN-Server zurückschreiben. Syntax: # svn --username <> --password <> export "<>" "<>" Beispiel: # svn --username fritz --password geheim export "http://svn/pfad/zum/repository/tags/release_20100305/" "svn_release_20100305" === CheckOut === So holt man sich das angegebene Verzeichnis zum entwickeln aus dem SVN-Server. **Hier sind die "''.svn''"-Verzeichnisse drin!** Syntax: # svn --username <> --password <> co "<>" oder # svn --username <> --password <> co "<>" "<>" Beispiel: # svn --username fritz --password geheim co "http://svn/pfad/zum/repository/tags/release_20100305/" oder # svn --username fritz --password geheim co "http://svn/pfad/zum/repository/tags/release_20100305/" "svn_release_20100305" === CheckIn === Hiermit kann man alle veränderten Dateien wieder in das SVN zurückschreiben. Syntax: # svn --username <> --password <> ci -m "Informationen zur Änderung" Beispiel: # svn --username fritz --password geheim ci -m "Fehler Xyz behoben" ==== Windoofs ==== * [[http://tortoisesvn.net/downloads]] Sehr zu empfehlen ist die Nutzung zusammen mit Winmerge (sollte vor tortoisesvn installiert werden).