Git Kurztutorial

From Alda
Jump to navigationJump to search

Anleitung zur Abgabe der Übungszettel über Git und Bitbucket

Übungszettel können in Zukunft auch das Online Repository Bitbucket (https://bitbucket.org/) abgegeben werden. Dazu nutzen wir das Versionverwaltungstool Git (http://git-scm.com/).

Terminologie

Die genauen Bezeichnungen können sich zwischen den verschiedenen Versionsverwaltungssystemem unterscheiden (z.B. Git, Bazaar, SVN, etc.)

Revision
Eine konkrekte Version einer Datei, eines Ordners oder einer ganzen Ordnerstruktur die im Versionsverwaltungssystem enthalten ist
Branch
i.d.R. die aktuellste Revision. In der Softwareentwicklung nutz man häufig mehrere branches parallel, z.B. einen Hauptentwicklungszweig (branch) und mehrere Nebenzweige für Experimente oder neue Programfeatures.
working copy
Die Dateien und Ordner die man gerade bearbeitet und deren Änderungen i.d.R. noch nicht im Versionsverwaltungssystem enthalten sind
Repository
Eine Sammlung an Revisionen mit zeitlicher und/oder logischer Ordnung.
commit
Das einpflegen der aktuellen working copy in das Repository (dabei wird eine neue Revision erzeugt)

Kurzanleitung

  1. Anlegen eines Accounts bei Bitbucket
  2. Erzeugen eines Repositories (Repositories -> create Repository)
    1. Sinnvollen Namen für das Repository wählen, z.B. ALDA
    2. Repository Type: Git
    3. Language: Python
  3. Setzen der Zugriffsrechte
    1. (Repository -> <eigenes Repository> -> Admin -> Access Managment)
    2. Hier kann man dem Übungspartner Schreibrechte zuweisen, bzw. dem Übungsgruppenleiter Leserechte
  4. Klonen des Repositories auf den eigenen Rechner (damit erzeugt man auch eine working copy)
    1. In der Kommandozeile: git clone https://<nutzername>@bitbucket.org/<nutzername>/<repository>.git
  5. Übungszettel lösen
  6. Für die Übung relevante Dateien einchecken
    1. Es empfiehlt sich Unterordner für die verschiedenen Übungszettel anzulegen, z.b. 01,02,etc.
    2. git add <dateiname> bzw. git add <ordnername> (fügt den ordner und alle enthaltenen Dateien hinzu)
    3. git commit -a -m "Statusnachricht" (Erzeugt eine neue Revision mit allen hinzugefügten neuen Dateien sowie den Änderungen an bereits bestehenden Dateien)
    4. git push -u origin master (Übertragen der Daten zum Server)
  • Erst nach diesem letzem Schritt können die Übungsleiter auch die Lösungen einsehen. Es empfiehlt sich auf der bitbucket Homepage im eigenen Repository unter "Code" zu überprüfen ob alle wichtigen Dateien vorhanden sind.
  • Es genügt ein Repository pro Team. Einzelne Übungszettel sollten in Unterordnern organisiert sein.

git merge/push/pull/fetch

Es gibt verschiedene möglichkeiten commits zwischen dem bitbucket repository und euren repositories hin und her zu schieben:

  • git pull ist git fetch und dann git merge
  • git fetch holt die Änderungen aus dem remote repository
  • git push schiebt die Änderungen ins remote repository
  • git merge versucht die Änderungen von einer anderen revision in euer arbeitsverzeichniss einzufügen

Änderungen hochladen

Dafür folgendes ausführen um Chaos zu vermeiden:

  1. git commit (einen commit erstellen)
  2. git pull (abgleich mit dem remote repository, falls jemand anderes etwas hochgelacen hat)
  3. git push (hochladen Eures commits und des evtl. benötigten zusammenführens)

Nützliche Links