GIT: Unterschied zwischen den Versionen

Aus C3D2
Zur Navigation springen Zur Suche springen
(Notiz, Skript)
(15 dazwischenliegende Versionen von 6 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{Broken
|Reason=Der untenstehende Veraltungshinweis ist veraltet.
}}
Statt zentralem [[SVN]] kann auch GIT sehr einfach benutzt werden.
Statt zentralem [[SVN]] kann auch GIT sehr einfach benutzt werden.


=Kurzanleitung mit Cogito=
{{Broken
|Reason=Kaputt gegangen. Bitte auf [http://codetu.be codetu.be] oder [http://github.com/c3d2 Github] ausweichen.
}}
 
== Kurzanleitung ==
 
Der Dienst kann auf [http://git.c3d2.de git.c3d2.de] gefunden werden.
 
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 ==


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:
===Auf cthulhu===
*: <code>cg-admin-setuprepo git+ssh://''HACKER''@cthulhu.c3d2.de/www-home/''HACKER''/public_html/git/''PROJEKT''.git</code>
cd /www-home/HACKER/public_html/
* Remote-Branch hinzufügen:
mkdir -p git/PROJEKT.git
*: <code>cg-branch-add cthulhu git+ssh://''HACKER''@cthulhu.c3d2.de/www-home/''HACKER''/public_html/git/''PROJEKT''.git</code>
cd git/
GIT_DIR=PROJEKT.git git-init-db
Für das Erstellen des Repositories ''sollte'' auch das Kopieren von ''.git/'' genügen...
 
===Lokal===
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 51: Zeile 68:
echo View source: http://cthulhu.c3d2.de/~${USER}/gitweb/?p=${1}.git
echo View source: http://cthulhu.c3d2.de/~${USER}/gitweb/?p=${1}.git
</pre>
</pre>
== Dateien ==
=== ~/.cgrc ===
Für farbige Ausgabe:
<pre>
log -cvf
diff -c
</pre>
=== ~/.gitconfig oder PROJEKT/.git/config ===
<pre>
[user]
name = Hacker
email = hacker@c3d2.de
</pre>
=== ''PROJEKT''/.git/description ===
Projektbeschreibung wie sie z.B. von gitweb angezeigt wird.
[[Kategorie:Projekt]]

Version vom 3. Juli 2017, 08:38 Uhr

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.