GIT: Unterschied zwischen den Versionen

Aus C3D2
Zur Navigation springen Zur Suche springen
(Kein cd)
(18 dazwischenliegende Versionen von 7 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>
 
=== Mit Versionsverwaltung arbeiten ===
* Zu versionierende Dateien mit <code>cg-add</code> hinzufügen
* Ä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>
 
=== Code auf [[Cthulhu]] publizieren ===
 
* Repository erstellen:
*: <code>cg-admin-setuprepo git+ssh://''HACKER''@cthulhu.c3d2.de/www-home/''HACKER''/public_html/git/''PROJEKT''.git</code>
* Remote-Branch hinzufügen:
*: <code>cg-branch-add cthulhu git+ssh://''HACKER''@cthulhu.c3d2.de/www-home/''HACKER''/public_html/git/''PROJEKT''.git</code>
Und nun alle lokal vorhandenen Commits auf cthulhu publizieren:
*: <code>cg-push cthulhu</code>
 
=== Publizierten Code abholen ===
: <code>cg-branch-add ''CRACKER'' http://cthulhu.c3d2.de/~''CRACKER''/git/''PROJEKT''.git</code>
: <code>cg-update ''CRACKER''</code>
: <code>cg-merge -j ''CRACKER''</code>
:: 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 ===
<pre>
#!/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
</pre>


mkdir PROJEKT
== Dateien ==
cd PROJEKT
cg-init -I


==Mit Versionsverwaltung arbeiten==
=== ~/.cgrc ===
* Zu versionierende Dateien mit ''cg-add'' hinzufügen
Für farbige Ausgabe:
* Änderungen im '''PROJEKT'''-Verzeichnis vornehmen
<pre>
* ''cg-diff'' um Änderungen seit dem letzten Commit anzusehen
log -cvf
* ''cg-commit'' um Änderungen in die Versionierung zu schreiben
diff -c
</pre>


==Code auf [[Cthulhu]] publizieren==
=== ~/.gitconfig oder PROJEKT/.git/config ===
===Auf cthulhu===
<pre>
cd /www-home/HACKER/public_html/
[user]
mkdir git
name = Hacker
cd git/
email = hacker@c3d2.de
mkdir PROJEKT.git
</pre>
env GIT_DIR="PROJEKT.git" git-init-db
=== ''PROJEKT''/.git/description ===


===Lokal===
Projektbeschreibung wie sie z.B. von gitweb angezeigt wird.
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==
[[Kategorie:Projekt]]
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'''''.

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.