GIT: Unterschied zwischen den Versionen

Aus C3D2
Zur Navigation springen Zur Suche springen
K (add category projekt)
(→‎Kurzanleitung mit Gitorious: update to current gitorious behavior)
Zeile 7: Zeile 7:


Als erstes ist eine Registrierung nötig und anschließend sollte dann noch der SSH-key der Wahl hinzugefügt 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 [[Benutzer:Dodo|dodo]] oder [[Benutzer:Astro|Astro]] darum bitten den task_performer von gitorious mal zu starten.
Das einsetzten des ssh-keys kann mit unter recht lange dauern. Wenn das nicht klappen sollte, weil es zu lange dauert (länger als 2 std), einfach [[Benutzer:Dodo|dodo]] darum bitten das Problem zu fixen.


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
Wer auf eine Bestätigungsmail der Registrierung von Gitorious hofft, wartet ewig.
Danach stehts es einem frei ob man nun sein Projekt in Gitorious oder mit der Konsole/Terminal erstellt.


=== neues Projekt mit Gitorious ===
=== neues Projekt mit Gitorious ===
Zeile 19: Zeile 18:
Ist weitestgehend selbsterklärend ...
Ist weitestgehend selbsterklärend ...


'''Info:''' Nach dem erstellen eines Projektes muss wieder der task_performer sein Werk vollbringen, bevor man es weiter nutzen kann.
'''Info:''' Wer seinen Code hochladen will oder generell nur auschecken, sollte die Addresse vorher noch etwas anpassen.
 
<pre>git://gitorious@git.hq.c3d2.de/PROJECT/REPOSITORY.git</pre>
=== neues Projekt mit der Shell ===
 
<pre>#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</pre>
 
'''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=
=Kurzanleitung mit Cogito=

Version vom 4. April 2010, 23:25 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. Wenn das nicht klappen sollte, weil es zu lange dauert (länger als 2 std), einfach dodo darum bitten das Problem zu fixen.

Die Registrierung kann auch mit openid gemacht werden. Wer noch kein Account hat findet den hier. Wer auf eine Bestätigungsmail der Registrierung von Gitorious hofft, wartet ewig.

neues Projekt mit Gitorious

Einfach klicken ...

Ist weitestgehend selbsterklärend ...

Info: Wer seinen Code hochladen will oder generell nur auschecken, sollte die Addresse vorher noch etwas anpassen.

git://gitorious@git.hq.c3d2.de/PROJECT/REPOSITORY.git

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.