View
36
Download
0
Category
Preview:
Citation preview
Ignorieren(neuer(Dateien
• .gitignore"System"für"generellen"Ausschluss"neuer"Dateien
• Automa7sch"generierte"Log9Dateien"oder"Build9Dateien
• .gitignore"funk7oniert"nicht"bei"versionierten"Dateien
©"Stephan"Partzsch,"2015 2
Ignorieren(versionierter(Dateien!!assume!unchanged
• Gedacht)um)ineffiziente)Dateisysteme)zu)entlasten
• Einstellung)wird)in)einigen)Fällen)überschrieben
• git reset --hard
• Pull)neuerer)Version)aus)dem)Remote@Repository)
©"Stephan"Partzsch,"2015 3
Ignorieren(versionierter(Dateien!!assume!unchanged
• Gedacht)um)ineffiziente)Dateisysteme)zu)entlasten
• Einstellung)wird)in)einigen)Fällen)überschrieben
• git reset --hard
• Pull)neuerer)Version)aus)dem)Remote@Repository)
©"Stephan"Partzsch,"2015 4
Ignorieren(versionierter(Dateien!!skip!worktree
• Normale)Git-Rou0nen)bleiben)erhalten
• Ignoriert)bewusst)Änderungen)im)Worktree
• Einstellung)wird)nicht)überschrieben!!!
©"Stephan"Partzsch,"2015 6
Ignorieren(versionierter(Dateien!!skip!worktree
• !Stashen*der*Dateien*klappt*nicht,*wenn*Einstellung*ak8v*ist!
• Einstellung*für*betroffene*Dateien*müssen*vorher*manuell*deak8viert*werden
©"Stephan"Partzsch,"2015 7
Versionierte)Datei)wieder&berücksich-gen
git update-index --no-skip-worktreegits <file>
©"Stephan"Partzsch,"2015 10
Kollabora'on• Einstellungen+sind+nur+lokal
• Jeder+muss+die+Commands+selbst+ausführen
• Lösung:"Script,"das"alle"Commands"ausführt
• Script"wird"nach"erstem"Checkout"gestartet"
©"Stephan"Partzsch,"2015 13
Beispiel'–'Git$Repository$anlegen
// Create git repository$ mkdir git-test$ cd git-test$ git initInitialized empty Git repository in …
©"Stephan"Partzsch,"2015 15
Beispiel'–'Datei&zum&Repository&hinzufügen
$ echo ‘Hello World’ > file01.txt$ git add file01.txt$ git commit -m ‘Adds a new file.’[master (root-commit) a6053cf] Adds a new file. 1 file changed, 1 insertion(+) create mode 100644 file01.txt
©"Stephan"Partzsch,"2015 16
Beispiel'–'Datei&verändern$ echo ‘here are some changes’ >> file01.txt$ git statusOn branch masterChanges not staged for commit: (use “git add <file>...” to update what will be committed) (use “git checkout -- <file>...” to discard changes in working directory)
modified: file01.txt
no changes added to commit (use “git add” and/or “git commit -a”)
©"Stephan"Partzsch,"2015 17
Beispiel'–'Datei&ignorieren
$ git update-index --skip-worktree file01.txt$ git statusOn branch masternothing to commit, working directory clean
©"Stephan"Partzsch,"2015 18
Beispiel'–'Datei&wieder&berücksich0gen$ git update-index --no-skip-worktree file01.txt$ git statusOn branch masterChanges not staged for commit: (use “git add <file>...” to update what will be committed) (use “git checkout -- <file>...” to discard changes in working directory)
modified: file01.txt
no changes added to commit (use “git add” and/or “git commit -a”)
©"Stephan"Partzsch,"2015 19
English!blog!post
h"p://blog.stephan0partzsch.de/how0to0ignore0changes0in0tracked0files0with0git
@StephanPartzsch
©"Stephan"Partzsch,"2015 20
Recommended