Statt zentralem [[SVN]] kann auch GIT sehr einfach benutzt werden. =Kurzanleitung mit Cogito= Hier wird davon ausgegangen, dass Du ('''HACKER''') mit jemand anderem ('''CRACKER''') zusammen an '''PROJEKT''' hacken willst. ==Repository anlegen== mkdir PROJEKT cd PROJEKT cg-init -I ==Mit Versionsverwaltung arbeiten== * Zu versionierende Dateien mit ''cg-add'' hinzufügen * Änderungen im '''PROJEKT'''-Verzeichnis vornehmen * ''cg-diff'' um Änderungen seit dem letzten Commit anzusehen * ''cg-commit'' um Änderungen in die Versionierung zu schreiben ==Code auf [[Cthulhu]] publizieren== Repository erstellen: cg-admin-setuprepo git+ssh://HACKER@cthulhu.c3d2.de/www-home/HACKER/public_html/git/PROJEKT.git Remote-Branch hinzufügen: cg-branch-add cthulhu git+ssh://HACKER@cthulhu.c3d2.de/www-home/HACKER/public_html/git/PROJEKT.git Und nun alle lokal vorhandenen Commits auf cthulhu publizieren: cg-push cthulhu ==Publizierten Code abholen== cg-branch-add CRACKER http://cthulhu.c3d2.de/~CRACKER/git/PROJEKT.git cg-update CRACKER cg-merge -j CRACKER Das ''cg-merge -j'' muss nur beim ersten Mal sein um die Branches zusammenzuführen, später reicht ''cg-update '''CRACKER'''''. ==create_git_repository.sh für cthulhu==
#!/bin/sh

cd /www-home/${USER}/public_html/git
echo "${1}.git ${USER}" >> ../gitweb/projects.list
rm -rf ${1}.git
mkdir ${1}.git
GIT_DIR=${1}.git git-init-db
cd ${1}.git
vi description

echo For you: cg-branch-add cthulhu git+ssh://${USER}@cthulhu.c3d2.de/www-home/${USER}/public_html/git/${1}.git
echo For others: cg-branch-add ${USER} http://cthulhu.c3d2.de/~${USER}/git/${1}.git
echo View source: http://cthulhu.c3d2.de/~${USER}/gitweb/?p=${1}.git
=Dateien= ==~/.cgrc== Für farbige Ausgabe: log -cvf diff -c ==~/.gitconfig oder PROJEKT/.git/config== [user] name = Hacker email = hacker@c3d2.de ==PROJEKT/.git/description== Projektbeschreibung wie sie z.B. von gitweb angezeigt wird.