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
How to contribute to Git
Search
Hiroshige Umino
September 07, 2013
Technology
300
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
How to contribute to Git
Gitに貢献する方法
Qiita主催のGet Great Git #2 at Nagoya での発表資料です
http://get-great-git-02.peatix.com
Hiroshige Umino
September 07, 2013
More Decks by Hiroshige Umino
See All by Hiroshige Umino
AIに任せる仕事、任せない仕事
yaotti
0
20
ローカルLLMを使ってB2Bサービスを作っていての学び
yaotti
0
170
Product Team Management
yaotti
16
35k
開発フローの作り方
yaotti
37
12k
プログラミングの道具作り
yaotti
3
280
Sole Rubyist's Fight
yaotti
4
710
Technology supporting Qiita and Kobito
yaotti
4
410
Qiita at #fluxflex meetup
yaotti
3
350
Other Decks in Technology
See All in Technology
LLMにもCAP定理があるという話
harukasakihara
0
330
手塩にかけりゃいいってもんじゃない
ming_ayami
0
560
【NRUG vol.18】なぜ多くのオブザーバビリティ導入は失敗するのか
nrug_member
0
120
AmazonRoute 53ではじめてのドメイン取得!HTTPS化までの道のりを整理してみた
usanchuu
3
140
2026 TECHFRESH 畢業分享會 - AI-Native 重塑軟體工程與虛擬講師
line_developers_tw
PRO
0
960
RAG を使わないという選択肢
tatsutaka
1
220
RSA暗号を手計算したくなること、ありますよね?? (20260615_orestudy6_rsa)
thousanda
0
360
AIの性能が向上しても未解決な組織の重大問題は何か?/An Unsolved Organizational Problem in the Age of AI
moriyuya
4
650
機械学習を「社会実装」するということ 2026年夏版 / Social Implementation of Machine Learning June 2026 Version
moepy_stats
5
2k
非エンジニアがClaudeと挑んだ「1ヶ月間プロダクト30本ノック」
askokc
0
460
Bucharest Tech Week 2026 - Reinventing testing practices in the AI era
edeandrea
PRO
1
150
AI駆動開発を通して感じた、 AI時代のデザイナーの役割変化
whisaiyo
3
2k
Featured
See All Featured
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
65
55k
Testing 201, or: Great Expectations
jmmastey
46
8.2k
The Invisible Side of Design
smashingmag
302
52k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
290
Statistics for Hackers
jakevdp
799
230k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
How to Talk to Developers About Accessibility
jct
2
230
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
270
For a Future-Friendly Web
brad_frost
183
10k
Music & Morning Musume
bryan
47
7.2k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
54k
Transcript
How to contribute to Git Get Great Git #2 @
Nagoya @yaotti
ࣗݾհ @yaotti Hiroshige UMINO Incrementsגࣜձࣾ CEO Ruby, Objective-C Scheme, Emacs
Gitྺ5 ͖ͳίϚϯυ: git rebase
cherry-pick: allow "-" as abbreviation of '@{-1}'
Gitʹߩݙ͢Δํ๏
֓ཁ Gitͷ։ൃମ੍ ίʔυߏ ύον࡞͔ΒऔΓࠐ·ΕΔ·ͰͷྲྀΕ
Gitͷ։ൃମ੍
ϝʔϧ ΓऔΓશͯϝʔϦϯάϦετͰ http://dir.gmane.org/ gmane.comp.version-control.git όάใࠂɼύονૹɼϨϏϡʔ GitHubͷPRΘͳ͍ɼແࢹ͞ΕΔ
ύον git commit; ...; git format-patch -> patches/0000-foo-bar.patch ϝʔϧʹinlineʹؚΊͯૹΔ ϝʔϧͷใ
= ίϛοτσʔλ 1ίϛοτ = ϝʔϧ1௨
None
ϒϥϯν
gitϨϙδτϦͷϒϥϯν master next: ϝϯςφʹΑΓ͓ͦΒ͘ͳ͍ͱΈͳ͞Εͨύον͕ೖΔ pu(proposed updates): topic branchΛूͨ͠ϒϥϯν Ճ࡞ۀ͕ඞཁͳύον͕ೖΔ(ςετෆɼυΩϡϝϯτෆ )
࡞ۀ͕ྃͨ͠Βtopic branch͕nextʹϚʔδ͞ΕΔ maint: ϝϯςφϯεϦϦʔε༻ɽਖ਼ࣜϦϦʔε͝ͱʹΒΕΔ
Gitͷίʔυ
ݴޠߏ 10% 10% 35% 45% C ShellScript Perl Others
ίʔυߏ git-* ίϚϯυ: ΄΅CͰ࣮͞Ε͍ͯΔ͕ɼ Ұ෦γΣϧεΫϦϓτ pull, rebase, stash, bisect, ...
ςετ: γΣϦεΫϦϓτͰهड़ git-add, commitͳͲ࣮ߦ!ϑΝΠϧ༰ͷ ൺֱͳͲ
ύον࡞͔ΒऔΓࠐ·ΕΔ·Ͱ
ࣄલ४උ GitϝʔϦϯάϦετΛߪಡ͠งғؾΛΔ http://git-scm.com/community git clone https://github.com/git/git υΩϡϝϯτΛಡΉ SubmittingPatches, CodingGudelines, t/README
࣮ όάमਖ਼: maint, ৽ػೳ: master͔Βcheckout ࣮࣌ςετ͖ͪΜͱॻ͘ ϢʔςΟϦςΟ t/test-lib-functions.sh ʹ (test_commit,
test_mergeͳͲ) TAP: prove --timer --jobs 8 ./t[0-9]*.sh ίϛοτ࣌ʹsign-off͢Δ(git commit -s)
ίϛοτϝοηʔδ SubmittingPatchesʹॻ͔Ε͍ͯΔݪଇʹै͏ 1ߦ: 50จࣈ͕soft limitɼύονͷରΛઌ಄ ʹॻ͘ɼͳͲ “cherry-pick: allow "-" as
abbreviation of '@{-1}'” ӳޠͰ໌ྎͳίϛοτϝοηʔδΛॻ͘ git log --no-merges
ύονϑΝΠϧͷ࡞&ૹ৴ git format-patch -M origin/master -o mypatches mypatches/0000-foo-bar-baz- of-1.patch “[PATCH
1/2] foo: bar baz” git send-email mypatches/*.patch
ϨϏϡʔΛͭ ͱͯஸೡʹରԠͯ͠Β͑Δ Ϩεϙϯε͕ૣ͍ σΟεΧογϣϯͰҙਤΛ͖ͪΜͱ͑Δ
͕͋ͬͨͱ͖ ࠶मਖ਼͠ύονΛ࡞Δ ϝʔϧͷsubject[PATCH v2], [PATCH v3]ͷΑ͏ʹ͢Δ tip: “-- 8< --”
(scissors) ίϛοτϝοηʔδʹؚΊͨ͘ͳ͍͕ϝʔϧ ʹೖΕ͍ͨจষΛॻ͘ͱ͖͏
ͳ͔ͬͨͱ͖ next(͘͠pu)ϒϥϯνʹऔΓࠐ·ΕΔ దͳλΠϛϯάͰmasterʹೖΔ “What's cooking in git.git”ϝʔϧ
·ͱΊ githubͷPRϕʔεͷ։ൃͱҧ͏ ৭ʑࣗಈԽ͞Ε͍ͯΔͷͰ׳ΕΕָ ίϚϯυϥΠϯ, ΤσΟλ, ϝʔϥʔ GitʹԸฦ͠ :)