Git für Fortgeschrittene
-
Upload
mayflower-gmbh -
Category
Technology
-
view
1.563 -
download
0
Transcript of Git für Fortgeschrittene
© 2010 Mayflower GmbH
Git für Fortgeschrittene
David Soria Parra I 31. May 2010 | @dsp_
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
I Man hat Git benutzt
I Man kann committen
I Branch, Push, Pull, Checkout
Erwartungen
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
I Viele migrieren: Zend Framework, phpBB, PHPUnit, ...
I Größere Projekte haben komplexe Anwendungsfälle
I Wir sind am Anfang des Technology Life Cycle
Motivation
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
Beispiel
developer
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
Branch und Rebase
Editieren Commit Veröffentlichen
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
Feature Branch„Jedes Feature auf eine Branch“
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
masterfeature-x
DAG (Directed Acyclic Graph)
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
master
feature-y
git checkout feature-y git rebase master
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
Branch und Rebase
Commit Rebase Merge
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
feature-y
bf0255ae
git rebase -i bf0225ae pick / rotate squash
Branch und Rebase
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
„Never rebase branches that you pulled or pushed. Rebase local branches only!“
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
Index
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
$ git status # On branch master# Changed but not updated:# (use "git add <file>..." to update what will be committed)# (use "git checkout -- <file>..." to discard changes in working directory)## modified: README.md#no changes added to commit (use "git add" and/or "git commit -a")
$ git commitno changes added to commit (use "git add" and/or "git commit -a")
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
working directory index repository
git add [file]
git commit
git commit -a
git stage [file]
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
static int run_builtin(struct cmd_st+ int status, help; struct stat st; const char *prefix;
prefix = NULL; help = argc == 2 && !strcmp(argv[1], if (!help) { if (p->option & RUN_SETUP) prefix = setup_git_directory();
+ if (use_pager == -1 && p->option+ use_pager = check_pager_c+ if (use_pager == -1 && p->option+ use_pager = 1; } commit_pager_choice();
Commit
git add -i
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
Neue KonzepteNeue Möglichkeiten
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
Projekt
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
externe Module
submodules
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
Zend Framework 2
phpBB
git.zendframework.com
git init phpBB
git submodule add git://..../zf2.git Zend Framework 2
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
Zend Framework 2
Symphony 2
phpBB
git.zendframework.com
git.github.com
git clone git submodule init git submodule update
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
Git ist kein Subversion
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
system integration
AdministrativesMontag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
Reflog
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
I Das Tool zur Recovery
I WICHTIG!
Reflog
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
git checkout test git checkout master git branch -D test
HEAD@{1}
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
Git ist manchmal trickreich
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
I DAG und Rebase
I Index
I Submodule
I Reflog
Zusammenfassung
Montag, 31. Mai 2010
Git für Fortgeschrittene I Mayflower GmbH I May 31, 2010 I
I Konzepten
I Storage Format
I Refspecs
I Cooles Features
I Bisect
I Notes
Weiterführendes
Montag, 31. Mai 2010
Vielen Dank für Ihre Aufmerksamkeit!
© 2010 Mayflower GmbH
Fragen?
Montag, 31. Mai 2010