GIT: Unterschied zwischen den Versionen

Aus C3D2
Zur Navigation springen Zur Suche springen
(anleitung für gitorious geadded)
KKeine Bearbeitungszusammenfassung
 
(11 dazwischenliegende Versionen von 5 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
Statt zentralem [[SVN]] kann auch GIT sehr einfach benutzt werden.
== Tutorials ==


* https://ohmygit.org/


=Kurzanleitung mit Gitorious=
{{Broken
|Reason=Der untenstehende Veraltungshinweis ist veraltet.
}}


Der Dienst kann auf [http://gitorious.hq.c3d2.de gitorious.hq.c3d2.de] gefunden werden.
Statt zentralem [[SVN]] kann auch GIT sehr einfach benutzt 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.
 
Die Registrierung kann auch mit [[OPENID|openid]] gemacht werden. Wer noch kein Account hat findet den [http://openid.hq.c3d2.de hier].
 
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 ===
{{Broken
|Reason=Kaputt gegangen. Bitte auf [http://codetu.be codetu.be] oder [http://github.com/c3d2 Github] ausweichen.
}}


<pre>#im projekt der wahl auf localhost:
== Kurzanleitung ==
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).
Der Dienst kann auf [http://git.c3d2.de git.c3d2.de] gefunden werden.


'''Nachteil:''' Is nochn bisschen buggy (der baut da noch stuss beim erstellen des events für das anlegen eines neuen projects)
Als erstes ist eine Eintragung des eigenen SSH-Keys nötig.<br />


=== Anleitung/Übersicht zu git ===


* [http://sourcemage.org/Git_Guide_Pre-1.5 sourcemage.org/Git_Guide]
* [http://www-cs-students.stanford.edu/~blynn/gitmagic/ Manage your save-games]


=Kurzanleitung mit Cogito=
== Kurzanleitung mit Cogito ==


Hier wird davon ausgegangen, dass Du ('''HACKER''') mit jemand anderem ('''CRACKER''') zusammen an '''PROJEKT''' hacken willst.
Hier wird davon ausgegangen, dass Du ('''HACKER''') mit jemand anderem ('''CRACKER''') zusammen an '''PROJEKT''' hacken willst.


==Repository anlegen==
=== Repository anlegen ===
: <code>mkdir ''PROJEKT''</code>
: <code>cd ''PROJEKT''</code>
: <code>cg-init -I</code>


mkdir PROJEKT
=== Mit Versionsverwaltung arbeiten ===
cd PROJEKT
* Zu versionierende Dateien mit <code>cg-add</code> hinzufügen
cg-init -I
* Änderungen im Verzeichnis ''PROJEKT'' vornehmen
* um Änderungen seit dem letzten Commit anzusehen
*: <code>cg-diff</code>
* um Änderungen in die Versionierung zu schreiben
*: <code>cg-commit</code>


==Mit Versionsverwaltung arbeiten==
=== Code auf [[Cthulhu]] publizieren ===
* 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:
Repository erstellen:
*: <code>cg-admin-setuprepo git+ssh://''HACKER''@cthulhu.c3d2.de/www-home/''HACKER''/public_html/git/''PROJEKT''.git</code>
cg-admin-setuprepo git+ssh://HACKER@cthulhu.c3d2.de/www-home/HACKER/public_html/git/PROJEKT.git
* Remote-Branch hinzufügen:
Remote-Branch hinzufügen:
*: <code>cg-branch-add cthulhu git+ssh://''HACKER''@cthulhu.c3d2.de/www-home/''HACKER''/public_html/git/''PROJEKT''.git</code>
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:
Und nun alle lokal vorhandenen Commits auf cthulhu publizieren:
cg-push cthulhu
*: <code>cg-push cthulhu</code>


==Publizierten Code abholen==
=== Publizierten Code abholen ===
cg-branch-add CRACKER http://cthulhu.c3d2.de/~CRACKER/git/PROJEKT.git
: <code>cg-branch-add ''CRACKER'' http://cthulhu.c3d2.de/~''CRACKER''/git/''PROJEKT''.git</code>
cg-update CRACKER
: <code>cg-update ''CRACKER''</code>
cg-merge -j CRACKER
: <code>cg-merge -j ''CRACKER''</code>
Das ''cg-merge -j'' muss nur beim ersten Mal sein um die Branches zusammenzuführen, später reicht ''cg-update '''CRACKER'''''.
:: Das <code>cg-merge -j</code> muss nur beim ersten Mal sein um die Branches zusammenzuführen, später reicht <code>cg-update ''CRACKER''</code>.


==create_git_repository.sh für cthulhu==
=== create_git_repository.sh für cthulhu ===
<pre>#!/bin/sh
<pre>
#!/bin/sh


cd /www-home/${USER}/public_html/git
cd /www-home/${USER}/public_html/git
Zeile 82: Zeile 73:
</pre>
</pre>


=Dateien=
== Dateien ==


==~/.cgrc==
=== ~/.cgrc ===
Für farbige Ausgabe:
Für farbige Ausgabe:
log -cvf
<pre>
diff -c
log -cvf
diff -c
</pre>


==~/.gitconfig oder PROJEKT/.git/config==
=== ~/.gitconfig oder PROJEKT/.git/config ===
[user]
<pre>
name = Hacker
[user]
email = hacker@c3d2.de
name = Hacker
email = hacker@c3d2.de
</pre>
=== ''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]]

Aktuelle Version vom 26. März 2021, 16:15 Uhr

Tutorials

b0rk3d

Teile des folgenden Inhalts sind nicht korrekt. Begründung: Der untenstehende Veraltungshinweis ist veraltet.

Statt zentralem SVN kann auch GIT sehr einfach benutzt werden.

b0rk3d

Teile des folgenden Inhalts sind nicht korrekt. Begründung: Kaputt gegangen. Bitte auf codetu.be oder Github ausweichen.

Kurzanleitung

Der Dienst kann auf git.c3d2.de gefunden werden.

Als erstes ist eine Eintragung des eigenen SSH-Keys nötig.

Anleitung/Übersicht zu 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 Verzeichnis PROJEKT vornehmen
  • um Änderungen seit dem letzten Commit anzusehen
    cg-diff
  • um Änderungen in die Versionierung zu schreiben
    cg-commit

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.