Slide 1

Slide 1 text

Git And possible workflow Tuesday, 22 November, 11

Slide 2

Slide 2 text

versioning control tools Originally for programmer Evolved for Designer too! Tuesday, 22 November, 11

Slide 3

Slide 3 text

Why git? Fast Everything local Enable more Workflow!!!! Tuesday, 22 November, 11

Slide 4

Slide 4 text

GitHub Model Fork and branch Make changes Pull Request Integration Manager Workflow Tuesday, 22 November, 11

Slide 5

Slide 5 text

Lesson learned What you should avoid at pull request Tuesday, 22 November, 11

Slide 6

Slide 6 text

git merge Merge hell Don’t merge at pull request. Don’t reuse branch. New Branch or Rebase! Tuesday, 22 November, 11

Slide 7

Slide 7 text

git rebase Rebase will kill the history. I appear so productive at 15 Nov! Some issue tracker will go crazy.... Rebase public branch? Tuesday, 22 November, 11

Slide 8

Slide 8 text

Remove password! git filter-branch --index-filter 'git rm --cached --ignore-unmatch Rakefile' HEAD git push origin master --force All branch must be rebase! github will cached the password, open a support ticket.... Tuesday, 22 November, 11

Slide 9

Slide 9 text

Revert merge ---o---o---o---M---x---x---W / ---A---B ---o---o---o---M---x---x---W---x / ---A---B-------------------C---D A and B are bad, use “git revert -m 1 M”(W) to revert C and D fix the bugs introduced by A and B. Tuesday, 22 November, 11

Slide 10

Slide 10 text

Two way Revert W Redo A B ---o---o---o---M---x---x-------x-------* / / ---A---B-------------------C---D ---o---o---o---M---x---x---W---x---x---Y---* / \ / ---A---B A'--B'--C' Tuesday, 22 November, 11

Slide 11

Slide 11 text

Consideration Try no to reverting too much Small commit is easier for bisect Revert a commit, not a merge. Linus on merge: ftp://82.96.64.7/pub/software/scm/git/ docs/v1.6.3.3/howto/revert-a-faulty-merge.txt Tuesday, 22 November, 11

Slide 12

Slide 12 text

Rule of thumb Branch more Keep branch small Merge frequent Tuesday, 22 November, 11