overpass/GIT_HINTS.md

1.3 KiB

Git-Hints

Gesamtes Repo klonen:

git clone https://gitea.fhgr.ch/schmidmarco/overpass.git

Neuen Arbeitsbranch 'work' machen beim Stand 'Task 1' (alle Files):

git checkout -b work Task_1

Nur nächsten Task (nur Task.md) holen:

  • holt nur die Aufgabe
  • eigener Code bleibt unangetastet
git checkout Task_2 -- TASK.md

Soll der Code von main in den work-Branch gemerged werden (in einem normalen Projekt ist es ja umgekehrt!), auf den work-Branch wechseln und:

git merge Task_7  -> ev. zu lösende Konflikte

Bedingt durch unseren Workflow wo sowohl auf main als auch work an den gleichen Files gearbeitet wird, führt das ziemlich sicher zu einem merge-Konflikt, welcher manuell gelöst werden muss.

Den ganzen Code zu einem bestimmten Tag holen (Notfall):

# Vorher eigene Arbeit sichern:
git add .
git commit -m "mein Stand vor Notfall-Checkout"

# Dann eine einzelne Datei holen:
git checkout Task_3 -- main.py

# Oder alles auf Tag zurücksetzen (unwiderruflich!):
git reset --hard Task_3

Vor dem reset, besser:

git log work --oneline    # nochmals anschauen was verloren geht
git commit -m "mein Stand, wird jetzt verworfen"  # zumindest in History sichtbar

Immer vor dem Holen des nächsten Tasks einen eigenen commit machen!

git commit -m "Task xy: ..."