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
Git workshop
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Daichi Hirata
October 03, 2012
Programming
9.6k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Git workshop
Nubee Tokyo Oct. 3, 2012
Daichi Hirata
October 03, 2012
More Decks by Daichi Hirata
See All by Daichi Hirata
GCPのネットワークでハマった話
daic_h
7
4.1k
ElasticBeatsを導入してみた話/Go Conference 2016 Spring
daic_h
3
6.1k
Ruby
daic_h
0
130
Other Decks in Programming
See All in Programming
AI時代に学ぶ 好きなルール 嫌いなルール Linter編
shorty5121
0
880
Go を使い始めて 2 ヶ月の学び / My first two months with Go
contour_gara
0
420
Foundry Localでエージェント開発
seosoft
0
150
Go × SIMDで高速化するベクトル検索 ~ルーフラインモデルでSIMDが効く境界を探れ! ~
po3rin
1
160
業務時間外もAIに働いてもらう話
colorful12
3
10k
What We Talk About When We Talk About XP
m_seki
2
390
Press start. Python's next generation.
willingc
PRO
3
320
アクセシビリティから考える情報設計
high_g_engineer
0
310
PyConJP2026_wat_Python × Signal Processing: How to Draw Pictures with Sound Using Spectrogram Art
wat
0
680
DroidKaigi 2026 「個人開発という実験場: Android エンジニアが手にする4つの自由」
slashnephy
0
220
Deep dive into the select statement (GopherCon UK)
jespino
0
170
AI Agent時代のリアーキテクチャ戦略と実践
hokaccha
1
730
Featured
See All Featured
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
970
Java REST API Framework Comparison - PWX 2021
mraible
34
9.7k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.8k
Test your architecture with Archunit
thirion
2
2.4k
Context Engineering - Making Every Token Count
addyosmani
9
1.1k
It's Worth the Effort
3n
188
29k
Odyssey Design
rkendrick25
PRO
2
800
Leo the Paperboy
mayatellez
8
2.2k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
410
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
600
Reality Check: Gamification 10 Years Later
codingconduct
0
2.3k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
Transcript
WorkShop server-side engineer Daichi Hirata
Purpose (JUʹରͯ͠ͷڞ௨ೝࣝ $PNNPOVOEFSTUBOEJOHGPS(JU ϊϋͷڞ༗ 4IBSJOHPGLOPXMFEHF
Agenda (JUͷجૅࣝ #BTJDLOPXMFEHF 5JQT
Basic knowledge
SVN Remote Repository Working Tree Commit / Checkout
Repository Working Tree .git internal Index Remote Repository stash Pull
/ Push Git
Repository Working Tree Index Component
Repository Working Tree Index git checkout Component ͍ͭͰϦϙδτϦ͔ΒҎલͷঢ়ଶͷ ϫʔΩϯάπϦʔΛνΣοΫΞτՄೳ :PVDBODIFDLPVUUIFXPSLJOHUSFFGSPNUIFSFQPTJUPSZ
BUBOZUJNFPGUIFQSFWJPVTTUBUF
Repository Working Tree Index Component git checkout git add ϫʔΩϯάπϦʔͷมߋ͕Πϯ
σοΫεొ͞ΕΔ $IBOHFUIFXPSLJOHUSFFUPUIFJOEFYJT SFHJTUFSFE
Repository Working Tree Index Component git checkout git add ΠϯσοΫεͷมߋ͕ϦϙδτϦ
ίϛοτ͞ΕΔ *OEFYDIBOHFTBSFDPNNJUUFEUPUIF SFQPTJUPSZ git commit
Repository Working Tree Index Component stash Ұ࣌తͳมߋίϛοτͰ͖ͳ͍ มߋΛୀආͤ͞Δ &WBDVBUFBOEDPNNJUDIBOHFTUIBUDBO OPUCFBUFNQPSBSZDIBOHF
git stash
Commit ϑΝΠϧπϦʔ 'JMFUSFF Ճใ "EEJUJPOBMJOGPSNBUJPO લͷίϛοτ -BTUDPNNJU
Commit ϑΝΠϧπϦʔ 'JMFUSFF Ճใ "EEJUJPOBMJOGPSNBUJPO લͷίϛοτ -BTUDPNNJU
Commit ϑΝΠϧπϦʔ 'JMFUSFF Ճใ "EEJUJPOBMJOGPSNBUJPO લͷίϛοτ -BTUDPNNJU ͲΕ͔̍ͭͰҟͳΕಉ͡ϑΝΠ ϧɺಉ͡༰ͰҟͳΔίϛοτ $PNNJUUIFTBNFpMFXJUIEJGGFSFOU
FWFOXJUIUIFTBNFDPOUFOUCVU EJGGFSFOUJGBOZPOF
Commit ϑΝΠϧπϦʔ 'JMFUSFF Ճใ "EEJUJPOBMJOGPSNBUJPO લͷίϛοτ -BTUDPNNJU
ҙͷίϛοτ͔Β࠷ॳͷίϛοτ JOJUJBMDPNNJU ͔Βͦͷίϛοτʹ ࢸΔશͯͷཤྺ͕औಘͰ͖Δ Commit )JTUPSZBMMUIFXBZUPDPNNJUGSPNUIF JOJUJBMDPNNJU DBOCFPCUBJOFEGSPNUIF pSTUDPNNJUDPNNJUBOZ
͋Δίϛοτ ͦͷϒϥϯνͷ࠷৽ͷί ϛοτ ʹࢸΔཤྺͱকདྷ Branch )JTUPSZBOEGVUVSFMFBEJOHUPUIF NPTU SFDFOUDPNNJUPOUIBUCSBODI DPNNJU UIFSF
Branch
C0 C1 C2 master hotfix Merge
C0 C1 C2 C3 master hotfix Merge
C0 C1 C2 C3 master hotfix Merge
C0 C1 C2 C3 master hotfix Fast foward Merge
C0 C1 C2 C3 master #11 C4 Merge
C0 C1 C2 C3 master #11 C4 Merge
C0 C1 C2 C3 master #11 C4 Merge
C0 C1 C2 C3 master #11 C4 Merge
C0 C1 C2 C3 master #11 C4 C5 Merge
C0 C1 C2 C3 master #11 C4 Rebase
C0 C1 C2 C3 master #11 C4 Rebase
C0 C1 C2 C3’ master #11 C4’ master cherry-pick Rebase
C0 C1 C4 C2 C3 C5 C8 C6 C7 #12
master #13 Rebase
C0 C1 C4 C2 C3 C5 C8 C6 C7 #12
master #13 Rebase
C0 C1 C4 C2 C3 C5 C8 C6 C7 #12
master #13 $ git rebase --onto master #12 #13 Rebase
Tips
$git stash $git bisect $git commit --amend $git rebase -i
HEAD~x $git cherry-pick $git reflog tips1: Useful Commands
$git stash drop stash@{x} $git stash apply [stash@{x}] $git stash
pop [stash@{x}] $git stash list $git stash [save message] $ git stash $git stash clear
$git stash drop stash@{x} $git stash apply [stash@{x}] $git stash
pop [stash@{x}] $git stash list $git stash [save message] $ git stash
$git stash drop stash@{x} $git stash apply [stash@{x}] $git stash
pop [stash@{x}] $git stash list $git stash [save message] $ git stash $git stash clear
$git reflog $git cherry-pick $git rebase -i HEAD~x $git bisect
$git stash tips1: Useful Commands $git commit --amend
$git bisect start $git bisect bad $git bisect good rev
$git bisect next $git bisect bad/good $git bisect reset $git bisect run <test_file> $git bisect
$git reflog $git cherry-pick $git rebase -i HEAD~x $git commit
--amend $git stash tips1: Useful Commands $git bisect
$git reflog $git cherry-pick $git rebase -i HEAD~x $git commit
--amend $git stash tips1: Useful Commands $git bisect
$git reflog $git cherry-pick $git rebase -i HEAD~x $git commit
--amend $git stash tips1: Useful Commands $git bisect
$git reflog $git cherry-pick $git rebase -i HEAD~x $git commit
--amend $git stash tips1: Useful Commands $git bisect
tips2: Setting [color] diff = auto status = auto branch
= auto ui = auto [alias] co = checkout st = status -sb wd = diff --word-diff tlog = log --graph --pretty=oneline --decorate --date=short --abbrev-commit --branches hist = log --pretty=format:\"%C(yellow)%h %C(White)%ad | %C(White)%s%d %C(Red)[%an]\" --graph --date=short [merge] tool = vimdiff [core] excludesfile = ~/.gitignore
tips2: Setting - gst
tips2: Setting - ignore-changes
tips2: Setting - prompt