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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Hiroshige Umino
September 07, 2013
Technology
1
290
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
Tweet
Share
More Decks by Hiroshige Umino
See All by Hiroshige Umino
Product Team Management
yaotti
16
35k
開発フローの作り方
yaotti
37
12k
プログラミングの道具作り
yaotti
3
260
Sole Rubyist's Fight
yaotti
4
690
Technology supporting Qiita and Kobito
yaotti
4
390
Qiita at #fluxflex meetup
yaotti
3
320
Other Decks in Technology
See All in Technology
Tebiki Engineering Team Deck
tebiki
0
24k
コミュニティが変えるキャリアの地平線:コロナ禍新卒入社のエンジニアがAWSコミュニティで見つけた成長の羅針盤
kentosuzuki
0
110
AI駆動開発を事業のコアに置く
tasukuonizawa
1
200
プロポーザルに込める段取り八分
shoheimitani
1
280
Digitization部 紹介資料
sansan33
PRO
1
6.8k
ClickHouseはどのように大規模データを活用したAIエージェントを全社展開しているのか
mikimatsumoto
0
230
CDKで始めるTypeScript開発のススメ
tsukuboshi
1
440
CDK対応したAWS DevOps Agentを試そう_20260201
masakiokuda
1
300
Agile Leadership Summit Keynote 2026
m_seki
1
620
AIと新時代を切り拓く。これからのSREとメルカリIBISの挑戦
0gm
0
1.2k
GitLab Duo Agent Platform × AGENTS.md で実現するSpec-Driven Development / GitLab Duo Agent Platform × AGENTS.md
n11sh1
0
140
AIエージェントを開発しよう!-AgentCore活用の勘所-
yukiogawa
0
170
Featured
See All Featured
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
120
Rebuilding a faster, lazier Slack
samanthasiow
85
9.4k
[SF Ruby Conf 2025] Rails X
palkan
1
750
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
150
Done Done
chrislema
186
16k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
How STYLIGHT went responsive
nonsquared
100
6k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
Speed Design
sergeychernyshev
33
1.5k
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ʹԸฦ͠ :)