×
Copy
Open
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
陳佑⽵竹 Mouson 2019.03.23 台⽇日技術交流聚會@ 天瓏書局 Three Tips
Slide 2
Slide 2 text
About Me • 陳佑⽵竹,朋友都叫我墨墨嗓 (Mouson)。專注於資訊科技整 合、應⽤用、開發⽅方法及研究的T 型⼈人,現任 PHP 資訊系統分析 師/⼈人夫/⼀一隻臘腸狗的爸爸/通⽤用 設計(ユニヴァーサルデザイン) 推廣。平時喜好⽻羽球、登⼭山及 ⼿手沖咖啡。 •
[email protected]
• https://fb.me/mouson
Slide 3
Slide 3 text
Three Tips
Slide 4
Slide 4 text
Three Tips bisect
Slide 5
Slide 5 text
Three Tips rerere bisect
Slide 6
Slide 6 text
Three Tips rerere worktree bisect
Slide 7
Slide 7 text
Use binary search to find the commit that introduced a bug bisect Ref: https://git-scm.com/docs/git-bisect
Slide 8
Slide 8 text
v2.3
Slide 9
Slide 9 text
? ? ? ? ? ? ? HEAD Some feature was a failure after merge v2.3
Slide 10
Slide 10 text
? ? ? ? ? ? ? HEAD Some feature was a failure after merge v2.3 git bisect start HEAD v2.3
Slide 11
Slide 11 text
Use git bisect search failure commit v2.3 ? ? ? ? ? ? ? HEAD git bisect start HEAD v2.3
Slide 12
Slide 12 text
Use git bisect search failure commit v2.3 ? ? ? ? ? ? ? HEAD git bisect start HEAD v2.3
Slide 13
Slide 13 text
Use git bisect search failure commit v2.3 ? ? ? ? ? ? ? HEAD BAD git bisect start HEAD v2.3
Slide 14
Slide 14 text
Use git bisect search failure commit v2.3 ? ? ? ? ? ? ? HEAD BAD
Slide 15
Slide 15 text
Use git bisect search failure commit v2.3 ? ? ? ? ? ? ? HEAD BAD git bisect bad
Slide 16
Slide 16 text
Use git bisect search failure commit v2.3 ? ? ? BAD ? ? ? HEAD git bisect bad
Slide 17
Slide 17 text
Use git bisect search failure commit v2.3 ? ? ? BAD ? ? ? HEAD BAD BAD BAD git bisect bad
Slide 18
Slide 18 text
Use git bisect search failure commit v2.3 ? ? ? BAD ? ? ? HEAD BAD BAD BAD
Slide 19
Slide 19 text
Use git bisect search failure commit v2.3 ? ? ? BAD ? ? ? HEAD BAD BAD BAD
Slide 20
Slide 20 text
Use git bisect search failure commit v2.3 ? ? ? BAD ? ? ? HEAD BAD BAD BAD GOOD
Slide 21
Slide 21 text
Use git bisect search failure commit v2.3 ? ? ? BAD ? ? ? HEAD BAD BAD BAD GOOD git bisect good
Slide 22
Slide 22 text
Use git bisect search failure commit v2.3 ? ? ? BAD ? ? ? HEAD BAD BAD BAD GOOD git bisect good
Slide 23
Slide 23 text
Use git bisect search failure commit v2.3 ? ? ? BAD ? ? ? HEAD BAD BAD BAD GOOD GOOD git bisect good
Slide 24
Slide 24 text
Use git bisect search failure commit v2.3 ? ? ? BAD ? ? ? HEAD BAD BAD BAD GOOD GOOD
Slide 25
Slide 25 text
Use git bisect search failure commit v2.3 ? ? ? BAD ? ? ? HEAD BAD BAD BAD GOOD GOOD X
Slide 26
Slide 26 text
use git blame find detail v2.3 ? ? ? BAD ? ? ? HEAD BAD BAD BAD GOOD GOOD X
Slide 27
Slide 27 text
Demo https://goo.gl/xGJxta UnitTest can be successfully executed in v2.0, but failed in the current version.
Slide 28
Slide 28 text
Demo Manuel: 1. git bisect start HEAD v2.0 2. phpunit / git bisect bad 3. phpunit / git bisect good 4. phpunit / git bisect good 5. git bisect reset https://goo.gl/xGJxta
Slide 29
Slide 29 text
Demo Auto: 1. git bisect start HEAD v2.0 2. git bisect run ./vendor/bin/phpunit https://goo.gl/xGJxta
Slide 30
Slide 30 text
Reuse recorded resolution of conflicted merges rerere https://git-scm.com/docs/git-rerere
Slide 31
Slide 31 text
Local GIT Rerere Sample I have a World!!! feature master I have a Apple !!! I have a Pen !!!
Slide 32
Slide 32 text
Local GIT Rerere Sample I have a World!!! feature master I have a Apple !!! I have a Pen !!! I have a Apple Pen !!!
Slide 33
Slide 33 text
GIT Rerere Demo 1. enable rerere feature git config --global rerere.enabled true https://goo.gl/8wj1he
Slide 34
Slide 34 text
Local GIT Rerere Sample I have a World!!! feature master I have a Apple !!! I have a Pen !!!
Slide 35
Slide 35 text
Local GIT Rerere Sample I have a World!!! feature master I have a Apple !!! I have a Pen !!!
Slide 36
Slide 36 text
Local GIT Rerere Sample I have a World!!! feature master I have a Apple !!! I have a Pen !!!
Slide 37
Slide 37 text
Local GIT Rerere Sample I have a World!!! feature master I have a Apple !!! I have a Pen !!!
Slide 38
Slide 38 text
Manage multiple working trees worktree https://git-scm.com/docs/git-worktree
Slide 39
Slide 39 text
Local GIT worktree Sample I have a World!!! feature master I have a Apple !!! I have a Pen !!!
Slide 40
Slide 40 text
Local GIT worktree Sample I have a World!!! feature master I have a Apple !!! I have a Pen !!!
Slide 41
Slide 41 text
Local GIT worktree Sample I have a World!!! I have a Apple !!! master I have a Pen !!! feature 1. Rebase
Slide 42
Slide 42 text
Local GIT worktree Sample I have a World!!! I have a Apple !!! master feature I have a Apple Pen !!! 1. Rebase
Slide 43
Slide 43 text
Local GIT worktree Sample I have a World!!! I have a Apple !!! feature I have a Apple Pen !!! 1. Rebase 2. Merge master
Slide 44
Slide 44 text
Three Tips rerere worktree bisect
Slide 45
Slide 45 text
Q & A 陳佑⽵竹 Mouson https://facebook.com/mouson