Git: Unterschied zwischen den Versionen

aus GlossarWiki, der Glossar-Datenbank der Fachhochschule Augsburg
Kowa (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
Kowa (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
Zeile 44: Zeile 44:
== Vorgehensweise in THA-Teamprojekten ==
== Vorgehensweise in THA-Teamprojekten ==


<source lang="bash">
Erstellung eines neuen Features:
 
# Aktuellen Masterbranch herholen: Bin ich im Masterbranch?<br/><code> >>> git checkout master </code><br/><code> >>> git pull </code>
# Neuer Featurebranch: Ich bin im Masterbranch.<br/><code> >>> git checkout -b [NAME] </code>
# Neuen Featurebranch auch für andere verfügbar machen.<br/><code> >>> git push </code><br/> (Git wird meckern, dann einfach das kopieren, was da steht.)
# Diverse Änderungen machen, committen und pushen.<br/><code> >>> git status</code><br/><code>>>> git add -u</code><br/><code>git commit -m '[#TICKETNR] was wurde gemacht?'</code><br/><code>git push</code>
# Änderungen sind getestet, alles funktioniert --> kann live gehen
## Aktuellen Masterstand lokal holen<br/><code> >>> git checkout master</code><br/><code> >>> git pull</code>
## Im Featurebranch aktuellen Masterbranch mergen<br/><code> >>> git checkout [NAME]</code><br/><code> >>> git merge master</code><br/><code> >>> git push</code>
## Dann Featurebranch in den Masterbranch mergen<br/><code> >>> git checkout master</code><br/><code> >>> git merge [NAME]</code><br/><code> >>> git push</code>
</source>
</source>

Version vom 19. April 2023, 10:28 Uhr

Typische Git-Befehle

git status         # Aktueller Status des Git-Repositories

git add <FILE>    # Eine Datei hinzufügen (stagen)
git add -u        # Alle geänderten Dateien hinzufügen 
git add --all     # Alle Dateien hinzufügen (gefährlich)

git commit -m "Commit-Nachricht"
                  # Geänderte Dateien zum Repository hinzufügen, gelöschte
                  # Dateien entfernen.

git log           # History einsehen

git diff          # Unterschiede zwischen alter und neuer Version

git checkout -b <BRANCH NAME> [master|...] 
                  # Checkt aus dem aktuellen Branch einen neuen Branch aus.
                  # Wichtig: In welchem Branch befinde ich mich.
git checkout <BRANCH NAME>
                  # checkout branch mit speziellem Namen
git merge master  # merges master in aktuellen Branch

# sobald keine Mergekonflikte
git checkout master
git pull
git merge development 


git clone https://gitlab.multimedia.hs-augsburg.de/kowa/wk_hello_world_01
git remote -v             # Anzeige des aktuellen Repositories
git remote remove origin  # aktuelles Repository entfernen
git remote add    origin  https://gitlab.multimedia.hs-augsburg.de/ACCOUNT/hello_world_01
                          # Neues Repository definieren
git push --set-upstream origin master # Daten erstmals ins neue Repository übertragen
git push                              # Weitere Daten übertragen
git pull                              # Aktuelle Daten aus dem Repository züm lokenen Rechner übertragen

git stash     # Archiviert aktuelle Änderungen
git stash pop # Holt Änderungen wieder zurück

Vorgehensweise in THA-Teamprojekten

Erstellung eines neuen Features:

  1. Aktuellen Masterbranch herholen: Bin ich im Masterbranch?
    >>> git checkout master
    >>> git pull
  2. Neuer Featurebranch: Ich bin im Masterbranch.
    >>> git checkout -b [NAME]
  3. Neuen Featurebranch auch für andere verfügbar machen.
    >>> git push
    (Git wird meckern, dann einfach das kopieren, was da steht.)
  4. Diverse Änderungen machen, committen und pushen.
    >>> git status
    >>> git add -u
    git commit -m '[#TICKETNR] was wurde gemacht?'
    git push
  5. Änderungen sind getestet, alles funktioniert --> kann live gehen
    1. Aktuellen Masterstand lokal holen
      >>> git checkout master
       >>> git pull
    2. Im Featurebranch aktuellen Masterbranch mergen
      >>> git checkout [NAME]
      >>> git merge master
       >>> git push
    3. Dann Featurebranch in den Masterbranch mergen
      >>> git checkout master
       >>> git merge [NAME]
       >>> git push

</source>