GIT: Unterschied zwischen den Versionen

Aus C3D2
Zur Navigation springen Zur Suche springen
(anleitung für gitorious geadded)
K (add category projekt)
Zeile 10: Zeile 10:


Die Registrierung kann auch mit [[OPENID|openid]] gemacht werden. Wer noch kein Account hat findet den [http://openid.hq.c3d2.de hier].
Die Registrierung kann auch mit [[OPENID|openid]] gemacht werden. Wer noch kein Account hat findet den [http://openid.hq.c3d2.de hier].
 
HQ_Schlüsselersatz?action=edit
Danach stehts es einem frei ob man nun sein Projekt in Gitorious oder mit der Konsole/Terminal erstellt.
Danach stehts es einem frei ob man nun sein Projekt in Gitorious oder mit der Konsole/Terminal erstellt.


Zeile 96: Zeile 96:
==PROJEKT/.git/description==
==PROJEKT/.git/description==
Projektbeschreibung wie sie z.B. von gitweb angezeigt wird.
Projektbeschreibung wie sie z.B. von gitweb angezeigt wird.
[[Kategorie:Projekt]]

Version vom 26. Mai 2009, 18:17 Uhr

Statt zentralem SVN kann auch GIT sehr einfach benutzt werden.


Kurzanleitung mit Gitorious

Der Dienst kann auf gitorious.hq.c3d2.de gefunden werden.

Als erstes ist eine Registrierung nötig und anschließend sollte dann noch der SSH-key der Wahl hinzugefügt werden. Das einsetzten des ssh-keys kann mit unter recht lange dauern (max 10 min. wegen cron-job). Wem das zu lange ist kann einfach mal dodo oder Astro darum bitten den task_performer von gitorious mal zu starten.

Die Registrierung kann auch mit openid gemacht werden. Wer noch kein Account hat findet den hier. HQ_Schlüsselersatz?action=edit Danach stehts es einem frei ob man nun sein Projekt in Gitorious oder mit der Konsole/Terminal erstellt.

neues Projekt mit Gitorious

Einfach klicken ...

Ist weitestgehend selbsterklärend ...

Info: Nach dem erstellen eines Projektes muss wieder der task_performer sein Werk vollbringen, bevor man es weiter nutzen kann.

neues Projekt mit der Shell

#im projekt der wahl auf localhost:
git init
#remote verbindung zu server setzen:
git remote add origin gitorious@git.hq.c3d2.de:PROJEKT/mainline.git
#hochladen:
git push origin master

Vorteil: Projekt sofort im repo aufm Server und sonst alles fertig (kein task_performer mehr nötig).

Nachteil: Is nochn bisschen buggy (der baut da noch stuss beim erstellen des events für das anlegen eines neuen projects)


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.