Git Grundlagen Teil 1 
git {init, clone, config, add, 
commit, status, log, rm, mv, push} 
©2014 Benjamin Schürmann, edu-g...
git init (server seitig) 
zentrales Git Repository anlegen 
­­bare 
Deklaration eines 
zentralen Speicherortes 
→ enden üb...
git clone 
vorhandenes Git Repository kopieren 
→ die erzeugte Arbeitskopie stellt 
ein vollwertiges Git Repo dar 
→ erzeu...
git config 
git-Installationen konfigurieren 
user.name Deklaration eines 
Nutzernamens 
user.email Deklaration der 
Nutze...
3 Git Ebenen 
working directory 
Arbeitsverzeichnis 
staging area 
Sammelpunkt für Änderungen 
git reposity 
Remote Git Pr...
git add 
verschieben von Änderungen im 
Arbeitsverzeichnis in die Staging Area 
→ kennzeichnet Änderungen für 
das nächste...
git commit 
hinzufügen der aktuellen Staging Area 
als Snapshot zum Projektverlauf 
­m 
Kurzbeschreibung der 
Änderungen i...
git status 
prüfen des Status vom 
Arbeitsverzeichnis & Staging Area 
Willkommen zum Git tutorial 
bob@host:~/project$ # ....
git log 
anzeigen der Snapshots, die commited 
wurden 
­­author="< 
pattern>" 
Änderungen einzelner Nutzer 
­­stat, 
-p 
D...
git {rm, mv} 
löschen, kopieren, verschieben von 
Dateien 
git rm 
löschen von Dateien 
git mv 
verschieben von Dateien 
W...
git push 
hochladen der Änderungen zum 
zentralen Repository 
Willkommen zum Git tutorial 
bob@host:~/project$ git push 
©...
Git Arbeitsablauf 
1. Änderungen durchführen 
2. Änderungen stagen → git add <file1> <file2> 
3. Änderungen prüfen → git s...
Git Grundlagen Teil 2 
git {rm, mv, checkout, revert, 
clean, pull, branch, merge} 
©2014 Benjamin Schürmann, edu-git@schu...
git rm 
löschen von Dateien 
● Löschen kann jederzeit rückgängig 
gemacht werden 
git rm 
löschen von Dateien 
git rm ­r 
...
git mv 
verschieben von Dateien 
git mv 
verschieben von Dateien 
Willkommen zum Git tutorial 
bob@host:~/project$ git mv ...
git checkout 
Änderungen zurückspielen 
git checkout <commit> <file> 
früheren commit einer Datei 
wiederherstellen und al...
git revert 
Rücksetzen eines kompletten commit 
Snapshots, ohne dass der commit 
aus der history gelöscht wird! 
● Git ver...
git clean 
Ungetrackte Dateien automatisch aufräumen lassen 
● Achtung: 
Im Gegensatz zum manuellen git rm können Änderung...
git pull 
Lokales Repository mit neuesten 
Änderungen aktualisieren 
1. Änderungen werden herungeladen 
git fetch 
2. Ände...
git branch 
Arbeitszweige auflisten, erstellen, löschen 
git branch <name> 
neuen Arbeitszweig <name> 
erstellen 
git bran...
git merge 
Mehrere Arbeitszweige 
zusammenführen 
git merge <branch> 
Merge <branch> in den aktuell 
gewählten Arbeitszwei...
Git Grundlagen Teil 3 
git {fsck, grep, help} 
©2014 Benjamin Schürmann, edu-git@schuermann.cc
git fsck 
Überprüfung der Verbindung und 
Validierung der Objektdaten 
Willkommen zum Git tutorial 
bob@host:~/project$ gi...
git grep 
Inhalte in commiteten Dateien 
finden 
git grep ­­text 
<text> 
Sucht in allen commiteten Dateien 
nach dem Stri...
git help 
Auslistung aller git Befehlen 
git help ­a 
Liefert eine Übersicht zu allen 
verfügbaren git Befehlen 
git help ...
Git Grundlagen Links 
● Git Tutorials von atlassian.com 
● Git Guide von <rogerdudler> 
● Interaktives Git Tutorial von gi...
Nächste SlideShare
Wird geladen in …5
×

Git Grundlagen

3.095 Aufrufe

Veröffentlicht am

Eine kurze Git Einführung im Rahmen eines Softwareprojektes der Westfälischen Hochschule Gelsenkirchen.

Veröffentlicht in: Software
0 Kommentare
1 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

Keine Downloads
Aufrufe
Aufrufe insgesamt
3.095
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
1.326
Aktionen
Geteilt
0
Downloads
23
Kommentare
0
Gefällt mir
1
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Git Grundlagen

  1. 1. Git Grundlagen Teil 1 git {init, clone, config, add, commit, status, log, rm, mv, push} ©2014 Benjamin Schürmann, edu-git@schuermann.cc
  2. 2. git init (server seitig) zentrales Git Repository anlegen ­­bare Deklaration eines zentralen Speicherortes → enden üblicherweise mit .git → Git Repo ohne Arbeitsverzeichnis Willkommen zum Git tutorial bob@host:~$ ssh bob@server bob@server:~$ cd meinprojekt bob@server:~$ git init ­­bare project.git ©2014 Benjamin Schürmann, edu-git@schuermann.cc
  3. 3. git clone vorhandenes Git Repository kopieren → die erzeugte Arbeitskopie stellt ein vollwertiges Git Repo dar → erzeugtes .git Unterverzeichnis enthält Metadaten des Git Repo Willkommen zum Git tutorial bob@host:~$ git clone ssh://bob@server/project.git bob@host:~$ cd projekt bob@host:~/project$ # ..SW­Entwicklung beginnen.. ©2014 Benjamin Schürmann, edu-git@schuermann.cc
  4. 4. git config git-Installationen konfigurieren user.name Deklaration eines Nutzernamens user.email Deklaration der Nutzer-Emailadresse ­­edit Bearbeitung aller Einstellungen (Farb-Unterstützung, ...) Willkommen zum Git tutorial bob@host:~$ git config ­­global user.name "Bob M." bob@host:~$ git config ­­global user.email "b@m.de" bob@host:~$ git config ­­global ­­edit ©2014 Benjamin Schürmann, edu-git@schuermann.cc
  5. 5. 3 Git Ebenen working directory Arbeitsverzeichnis staging area Sammelpunkt für Änderungen git reposity Remote Git Projekt ©2014 Benjamin Schürmann, edu-git@schuermann.cc
  6. 6. git add verschieben von Änderungen im Arbeitsverzeichnis in die Staging Area → kennzeichnet Änderungen für das nächste commit Willkommen zum Git tutorial bob@host:~/project$ git add hello.java bob@host:~/project$ git commit ­m "datei erstellt" bob@host:~/project$ git add src bob@host:~/project$ git commit ­m "ordner erstellt" ©2014 Benjamin Schürmann, edu-git@schuermann.cc
  7. 7. git commit hinzufügen der aktuellen Staging Area als Snapshot zum Projektverlauf ­m Kurzbeschreibung der Änderungen im Snapshot ­a Berücksichtigung der Änderungen an allen Dateien Willkommen zum Git tutorial bob@host:~/project$ git commit ­m "Fehlerbehebung #42" bob@host:~/project$ git commit ­am "neue Datenstruktur" ©2014 Benjamin Schürmann, edu-git@schuermann.cc
  8. 8. git status prüfen des Status vom Arbeitsverzeichnis & Staging Area Willkommen zum Git tutorial bob@host:~/project$ # ..Edit hello.java.. bob@host:~/project$ git status hello.java: "Changes not staged for commit" bob@host:~/project$ git add hello.java bob@host:~/project$ git status hello.java: "Changes to be commited" bob@host:~/project$ git commit bob@host:~/project$ git status nothing to commit (working directory clean) ©2014 Benjamin Schürmann, edu-git@schuermann.cc
  9. 9. git log anzeigen der Snapshots, die commited wurden ­­author="< pattern>" Änderungen einzelner Nutzer ­­stat, -p Detailliertere Ansichten ­­oneline Jeder commit als Einzeiler (Übersicht) Willkommen zum Git tutorial bob@host:~/project$ git log commit 3157ee3718e180a9476bf2e5cab8e3f1e Author: Bob M. <b@m.de> Date: Tue Jan 8 12:57:51 2013 +0100 hinzufügen der Funktion sha1() ©2014 Benjamin Schürmann, edu-git@schuermann.cc
  10. 10. git {rm, mv} löschen, kopieren, verschieben von Dateien git rm löschen von Dateien git mv verschieben von Dateien Willkommen zum Git tutorial bob@host:~/project$ git rm hello.java bob@host:~/project$ git mv hello.java src/ ©2014 Benjamin Schürmann, edu-git@schuermann.cc
  11. 11. git push hochladen der Änderungen zum zentralen Repository Willkommen zum Git tutorial bob@host:~/project$ git push ©2014 Benjamin Schürmann, edu-git@schuermann.cc
  12. 12. Git Arbeitsablauf 1. Änderungen durchführen 2. Änderungen stagen → git add <file1> <file2> 3. Änderungen prüfen → git status 4. Änderungen hinzufügen → git commit ­m "Kurzer Text" 5. Änderungen hochladen → git push ©2014 Benjamin Schürmann, edu-git@schuermann.cc
  13. 13. Git Grundlagen Teil 2 git {rm, mv, checkout, revert, clean, pull, branch, merge} ©2014 Benjamin Schürmann, edu-git@schuermann.cc
  14. 14. git rm löschen von Dateien ● Löschen kann jederzeit rückgängig gemacht werden git rm löschen von Dateien git rm ­r löschen von Ordner Willkommen zum Git tutorial bob@host:~/project$ git rm hello.java bob@host:~/project$ git rm ­r src/ ©2014 Benjamin Schürmann, edu-git@schuermann.cc
  15. 15. git mv verschieben von Dateien git mv verschieben von Dateien Willkommen zum Git tutorial bob@host:~/project$ git mv ordner1/ ordner2/ bob@host:~/project$ git status renamed: ordner1/1.c ­> ordner2/ordner1/1.c bob@host:~/project$ git mv hello.java src/ bob@host:~/project$ git status renamed: hello.java ­> src/hello.java ©2014 Benjamin Schürmann, edu-git@schuermann.cc
  16. 16. git checkout Änderungen zurückspielen git checkout <commit> <file> früheren commit einer Datei wiederherstellen und alle anderen Dateien anpassen git checkout <commit> alle Dateien auf den Stand eines bestimmten commits mit mehreren Dateien bringen Willkommen zum Git tutorial bob@host:~/project$ git log –oneline 9183f9f Bug #14 in Run.java gefixt. bob@host:~/project$ git checkout 9183f9f Run.java ©2014 Benjamin Schürmann, edu-git@schuermann.cc
  17. 17. git revert Rücksetzen eines kompletten commit Snapshots, ohne dass der commit aus der history gelöscht wird! ● Git versucht Änderungen durch den gewählten commit zurückzuspielen ● Nach Ausführung der Rücksetzung wird ein neuer commit mit den neuen Änderungen vorgeschlagen Willkommen zum Git tutorial bob@host:~/project$ git log –oneline 9183f9f Bug #14 in Run.java gefixt. bob@host:~/project$ git revert 9183f9f ©2014 Benjamin Schürmann, edu-git@schuermann.cc
  18. 18. git clean Ungetrackte Dateien automatisch aufräumen lassen ● Achtung: Im Gegensatz zum manuellen git rm können Änderungen durch git clean nicht mehr rückgängig gemacht werden. git clean ­n „dry-run“: Nur Auflisten aller Dateien die gelöscht werden git clean ­df <path> Untracked Dateien -f und Ordner -d löschen git clean ­xdf <path> Untracked Dateien -f und Ordner -d, sowie Dateien nach .gitignore -x löschen Willkommen zum Git tutorial bob@host:~/project$ git status Untracked files: (use "git add <file>..." …) Run.java bob@host:~/project$ git clean ­n Would remove Run.java bob@host:~/project$ git clean ­xdf Removing Run.java ©2014 Benjamin Schürmann, edu-git@schuermann.cc
  19. 19. git pull Lokales Repository mit neuesten Änderungen aktualisieren 1. Änderungen werden herungeladen git fetch 2. Änderungen werden zusammengeführt git merge Willkommen zum Git tutorial bob@host:~/project$ git checkout master bob@host:~/project$ git pull ©2014 Benjamin Schürmann, edu-git@schuermann.cc
  20. 20. git branch Arbeitszweige auflisten, erstellen, löschen git branch <name> neuen Arbeitszweig <name> erstellen git branch alle Arbeitszweige auflisten git branch ­D <name> Arbeitszweig <name> löschen git branch ­m <name> Arbeitszweig <name> umbenennen Willkommen zum Git tutorial bob@host:~/project$ git branch * master test bob@host:~/project$ git checkout test bob@host:~/project$ git branch ­m test2 bob@host:~/project$ git branch Master * test2 ©2014 Benjamin Schürmann, edu-git@schuermann.cc
  21. 21. git merge Mehrere Arbeitszweige zusammenführen git merge <branch> Merge <branch> in den aktuell gewählten Arbeitszweig git merge ­­no­ff <branch> Merge <branch> in den aktuell gewählten Arbeitszweig, aber lege einen merge commit an Willkommen zum Git tutorial bob@host:~/project$ git checkout master bob@host:~/project$ git branch * Master test bob@host:~/project$ git merge test ©2014 Benjamin Schürmann, edu-git@schuermann.cc
  22. 22. Git Grundlagen Teil 3 git {fsck, grep, help} ©2014 Benjamin Schürmann, edu-git@schuermann.cc
  23. 23. git fsck Überprüfung der Verbindung und Validierung der Objektdaten Willkommen zum Git tutorial bob@host:~/project$ git fsck Checking object directories: 100% (256/256), done. ©2014 Benjamin Schürmann, edu-git@schuermann.cc
  24. 24. git grep Inhalte in commiteten Dateien finden git grep ­­text <text> Sucht in allen commiteten Dateien nach dem String <text> git grep ­n ­­text <text> Liefert neben dem Dateinamen auch die Zeile Willkommen zum Git tutorial bob@host:~/project$ git grep ­­text "main" o.java: public static void main(String[] args){ bob@host:~/project$ git grep ­n ­­text "MAX_C" o.java:10: private static final int MAX_C = 0; ©2014 Benjamin Schürmann, edu-git@schuermann.cc
  25. 25. git help Auslistung aller git Befehlen git help ­a Liefert eine Übersicht zu allen verfügbaren git Befehlen git help <command> Liefert weitere Informationen zu dem git Befehl <command> Willkommen zum Git tutorial bob@host:~/project$ git help ­a bob@host:~/project$ git help merge
  26. 26. Git Grundlagen Links ● Git Tutorials von atlassian.com ● Git Guide von <rogerdudler> ● Interaktives Git Tutorial von github.com ● Tutorial zu Git Branching von <pcottle> ©2014 Benjamin Schürmann, edu-git@schuermann.cc

×