# C-CPP_Practise # Git 1. git **stage** ==> Festschreiben der gemachten localen änderungen ohne diese auf den Server zu laden, die Änderungen sind aber beim nächsten commit enthalten 2. git **commit** ==> Schnappschuss der Änderungen die gestaged sind. Änderungen werden auf den Server geladen. 3. git **push** ==> Senden der lokalen änderungen an den Server 4. git **pull** ==> Holen der Änderungen vom Server und anwenden auf die Lokale Version Für den Entwicklungsprozess gibt es immer 3 Branches - main - int (integration) - dev (development) **main** ist immer der Stabile getestete Stand mit Vollversionenn **0**_.XXXy_ ,**1**_.XXXy_ , **2**_.XXXy_, ... **int** ist für eine Version in der Neuerungen die volle Funktionalität aufweißt, ohne stabilitäts tests, als Kennzeichnung werden 3 Stellen nach dem Punkt nummerisch verwendet _N.**001**y_, _N.**002**y_, _N.**003**y_, ... **dev** ist für das hinzufügen neuer funktionen ohne funktions und stabilitäts garantie und hat als kennzeichnung einen Kleinbuchstaben _N.XXX_**a**, _N.XXX_**b**, _N.XXX_**c**, ... ## Änderungen in ein neues Stadium heben 1. Wechseln in den Branch in dem die änderung übernommen werden soll. - `git checkout int` - `git checkout main` - `git checkout dev` 2. Mergen von Branch A in Branch B - `git rebase dev` - `git rebase int` - `git rebase main` 3. übertragung durchführen - `git commit` _Beispiel: Änderungen aus der dev in int übernehmen_ `git checkout int` um in den int-Branch zu wechslen um dann mit `git merge dev` die änderungen aus dem dev-brache zu übernehmen Diverse C/C++ Ausprobierereien ## C/C++ Hallo hier wird alles stehen was wichtig und zum schnellen nachlesen ist gcc Compiler für C Code g++ Compiler für CPP Code |Spalte 1|Spalte2 |---|---| |main.cpp|Diverses C++ gedöns |objects.cpp|Diverse Opjekte