Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
2019年11月20日 ビアバッシュ LT発表資料
Search
kazuma.murata
November 21, 2019
Technology
0
460
2019年11月20日 ビアバッシュ LT発表資料
そんなコミットログで良いのか?
git rebaseを使え!
kazuma.murata
November 21, 2019
Tweet
Share
More Decks by kazuma.murata
See All by kazuma.murata
ROSCAFE_2社に聞く_DevOpsの最新事例__SocialDog発表スライド_.pdf
canon1ky
1
240
Laravel × オニオンアーキテクチャで始めるテスト駆動開発
canon1ky
5
2.3k
BDDフレームワークで始める、E2Eテストのススメ
canon1ky
1
570
20200109サポーターズ勉強会
canon1ky
0
290
仲間と起業、経営から廃業に至る中で学んだ「ビジョン」の本当の大切さ
canon1ky
2
77
Other Decks in Technology
See All in Technology
モダンフロントエンド 開発研修
recruitengineers
PRO
9
6.1k
【初心者向け】ローカルLLMの色々な動かし方まとめ
aratako
2
1.5k
Grafana MCPサーバーによるAIエージェント経由でのGrafanaダッシュボード動的生成
hamadakoji
1
980
生成AI時代に必要な価値ある意思決定を育てる「開発プロセス定義」を用いた中期戦略
kakehashi
PRO
1
240
AI時代に非連続な成長を実現するエンジニアリング戦略
sansantech
PRO
3
910
Kiroと学ぶコンテキストエンジニアリング
oikon48
5
4.5k
データアナリストからアナリティクスエンジニアになった話
hiyokko_data
0
220
Language Update: Java
skrb
1
130
allow_retry と Arel.sql / allow_retry and Arel.sql
euglena1215
0
140
制約理論(ToC)入門
recruitengineers
PRO
9
3.7k
衝突して強くなる! BLUE GIANTと アジャイルチームの共通点とは ― いきいきと活気に満ちたグルーヴあるチームを作るコツ ― / BLUE GIANT and Agile Teams
naitosatoshi
0
290
PRDの正しい使い方 ~AI時代にも効く思考・対話・成長ツールとして~
techtekt
PRO
0
310
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
45
7.6k
Fireside Chat
paigeccino
39
3.6k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.4k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
How GitHub (no longer) Works
holman
315
140k
Music & Morning Musume
bryan
46
6.8k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
BBQ
matthewcrist
89
9.8k
Side Projects
sachag
455
43k
Speed Design
sergeychernyshev
32
1.1k
Transcript
ͦΜͳίϛοτϩάͰྑ͍ͷ͔ʁ git rebaseΛ͑ʂ 2019/11/21() @ϏΞόογϡLTձ
ࣗݾհ ɾଜాओຏ (@canon1ky) ɾגࣜձࣾShowcase Gig ɾઍ༿ݝࢢࢢࡏॅʢࢁསݝग़ʣ ɾόοΫΤϯυΤϯδχΞ → ձࣾܦӦ →
ͳΜ͔ΜͰΤϯδχΞʹΔ ɾUdemyडߨऀ500ਓಥഁ (1ສਓ·ͩ·ͩઌ) ɾϏʔτϚχΞSPօ ɾTerraform × EKS ͱฃಆத ɾ࠷ۙνʔζσβʔτΞπ͍
͜Ε
νʔζͳͷͰ੍࣭ݶʹ˕
ຊ: gitͷ
ಥવͰ͕͢
៉ྷͳίϛοτ͍ͤͯ·͔͢ʁ
៉ྷͳίϛοτͱʁ ɾίϛοτϝοηʔδ͕ಡΈ͍͢ ɾίϛοτͷཻ͕ͪΐ͏Ͳྑ͍ ɾมߋ֓ཁ͕͔Γ͍͢ ϥϯΩϯάूܭͷ TFSWJDFϩδοΫΛՃ ϥϯΩϯάͷॻ͖ࠐΈઌ ΤϯυϙΠϯτΛมߋ ϥϯΩϯάूܭͷ ςετΛՃ
ෳਓॱҐ͕ಉ࣌͡ʹ Ұਓ͔͠ දࣔ͞Εͳ͍ෆ۩߹Λमਖ਼
៉ྷͰͳ͍ίϛοτͱʁ ɾίϛοτϝοηʔδ͕ಡΈʹ͍͘ ɾίϛοτͷཻ͕େ͖͗͢/খ͗͢͞ ɾมߋ֓ཁ͕Θ͔Βͳ͍ ϥϯΩϯάूܭ मਖ਼ ςετՃ ෆ۩߹मਖ਼
ͦͦͳͥ ίϛοτ͕៉ྷͰ͋Δ͖ͳͷʁ
ίϛοτ͕៉ྷͰ͋Δ͖ཧ༝ ϲ݄ޙͷࣗ νʔϜϝϯόʔ গ ద͚ͩͲؾʹ͠ͳ͍ʂ ίϛοτԚ͗ͯ͢ϨϏϡʔ ͠ʹ͍͘Μ͚ͩͲʢ͓͜ʣ ͜ͷલফͨ͠ ॲཧ෮׆͍͚ͤͨ͞Ͳ ίϛοτͲΕ͚ͩͬʜ
ͱ͍͏͜ͱͰ
έʔεผʹ Ԛ͍ίϛοτΛۦஞ͠·͠ΐ͏ʂ
⾠Warning ίϛοτͷཻϓϩδΣΫτʹΑͬͯҟͳΓ·͢ ࣗͷϓϩδΣΫτͷϧʔϧʹͯΊͯߟ͑ͯΈͯ ͍ͩ͘͞
έʔε1: ʮमਖ਼ʯͷཛྷ ίϛοτϩά lमਖ਼zͬͯԿΑΞϯλʂʂʂʂ
ղܾࡦ git rebase ͔Βͷ reword աڈͷίϛοτϝοηʔδΛ มߋ͢Δ
खॱ $ git rebase -i HEAD~[ίϛοτͷ] →ΤσΟλ͕։͘ →มߋ͍ͨ͠ίϛοτͷʮpickʯΛʮrʯʹ →อଘͯ͠ΤσΟλΛด͡Δ →ίϛοτमਖ਼
࣮ԋ
έʔε2: ίϛοτ͕ࡉ͔͗͢Δ ใྔଟͯ͘ർΕ͖ͯͨκʙ
ղܾࡦ git rebase ͔Βͷ fixup աڈͷෳίϛοτΛͭʹ·ͱΊΔ
खॱ $ git rebase -i HEAD~[ίϛοτͷ] →ΤσΟλ͕։͘ →มߋ͍ͨ͠ίϛοτͷʮpickʯΛʮfʯʹ →อଘͯ͠ΤσΟλΛด͡Δ
࣮ԋ
έʔε3: ফ͠Εͨprintσόοά Ξφλ ٧Ί͕͍ͬͯԿճݴͬͨΒ Θ͔Δͷʂʂ
ղܾࡦ git rebase ͔Βͷ edit աڈͷίϛοτ༰Λฤू͢Δ
खॱ $ git rebase -i HEAD~[ίϛοτͷ] →ΤσΟλ͕։͘ →มߋ͍ͨ͠ίϛοτͷʮpickʯΛʮeʯʹ →อଘͯ͠ΤσΟλΛด͡Δ →ίϛοτฤू
࣮ԋ
έʔε4: nݸલͷίϛοτͱͷ༰ඃΓ ·ͱΊ͍ͨ ͏গ͠៉ྷʹͰ͖ͦ͏ͩͳ͊
ղܾࡦ git rebase ͔Βͷ ॱ൪มߋ & fixup ίϛοτॱংೖΕସ͑ͱ ίϛοτΛ·ͱΊΔ ߹Θٕͤ
खॱ $ git rebase -i HEAD~[ίϛοτͷ] →ΤσΟλ͕։͘ →౷߹ݩͷίϛοτͷߦΛ ɹ౷߹ઌͷίϛοτͷԼʹ࣋ͬͯ͘Δ →౷߹ݩͷίϛοτͷʮpickʯΛʮfʯʹ
→อଘͯ͠ΤσΟλΛด͡Δ
࣮ԋ
͍͞͝ʹ: rebaseͷҙ • ଞͷϒϥϯνʹϚʔδͨ͠ίϛοτʹؔ͠ ͯ༻ʹҙ • Ϛʔδίϛοτ͕ফ͑ͨΓ͢Δ • ϓϧϦΫग़͢લʹrebaseͰ៉ྷʹ͢Δ ͘Β͍ͷײ͡ͰΔͷ͕Good
ଞʹ·ͩ·ͩrebase ৭ʑͳ͍ํ͕͋Δʂ
ྑ͖gitϥΠϑΛʂʂ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠