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
La théorie des graphes appliquée à Git
Search
ubermuda
April 17, 2017
Technology
430
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
La théorie des graphes appliquée à Git
ubermuda
April 17, 2017
More Decks by ubermuda
See All by ubermuda
Comment Docker révolutionne le web
ubermuda
3
730
Vers des applications twelve-factor
ubermuda
2
1.1k
Git et la théorie des graph
ubermuda
3
1.1k
Introduction à Docker
ubermuda
6
1.1k
Meetup Docker 101
ubermuda
1
240
A multi-container Symfony2 setup with Docker
ubermuda
40
12k
Docker Introduction
ubermuda
5
550
Symfony 2, un framework robuste et moderne
ubermuda
5
220
Migration d'une base de code subversion vers git
ubermuda
0
130
Other Decks in Technology
See All in Technology
[2026-07-15] AI Ready なはずだったアーキテクチャと、見えてきた課題・次に目指す状態
wxyzzz
9
4k
Amplify Gen2でbackend.tsにCDKを定義する/しない事によるCDKの挙動の違いとユースケース
smt7174
1
430
Oracle Exadata Database Service on Cloud@Customer X11M (ExaDB-C@C) サービス概要
oracle4engineer
PRO
2
8.4k
Genie Ontologyは銀の弾丸かを考える / Is Genie Ontology a Silver Bullet?
nttcom
0
420
そのドキュメント、自動化しませんか?
yuksew
1
320
プロダクト開発組織の現在地(Ver.2026/07) / product-organization
kaonavi
0
120
「守りたい体験」を渡すだけで E2E を生成させられるようになった話
hinac0
1
760
しくみを学んで使いこなそう GitHub Copilot app
torumakabe
2
290
SREとQA 二人三脚で進めるSLO運用/sre-qa-slo
sugitak
0
1k
Data + AI Summit 2026 イベントレポート: 「AIがビジネスで意思決定するデータ基盤」へ
nek0128
0
290
変更し続けられるシステムをどう保つか — AI時代のSSoTという設計原則
kawauso
1
260
凡エンジニアがこの先生きのこるためには。〜TypeScript完全に理解したい〜
alchemy1115
2
310
Featured
See All Featured
SEO for Brand Visibility & Recognition
aleyda
0
4.6k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
490
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
460
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.8k
Designing for Timeless Needs
cassininazir
1
370
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
900
Navigating Team Friction
lara
192
16k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.7k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.7k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Transcript
La théorie des graphes appliquée à git Geoffrey Bachelet @ubermuda
Königsberg
ez pz Leonhard Euler
None
Pont Masse de terre
Arête Noeud graphe
1 2 3 4
None
A B E D C
A B E D C Noeuds
A B E C Arêtes D
A B E D C Graph orienté
A B E D C Graph orienté
None
Atteignabilité
Atteignabilité C est atteignable depuis E A B E D
C
Atteignabilité NOPE A B E D C
A B D E C F D n'est pas atteignable
depuis F Atteignabilité
Atteignabilité
None
$ git branch * master $ ls .git/refs/heads/ master $
cat .git/refs/heads/master 58bd01cded7904f1596cb12aac1d3e0e8ae6b558
$ git log --format="%H" 6465a2cd4d6d3b0a0a62588eeb5b798bb7d31a71 7d1d4dabc49854a0807200361731446476565094 17a59ceda9b2806e2a135df039506d1ec1a976e6 ...
$ echo "6465a2cd" > .git/refs/heads/foo
$ git branch * master foo
A B D E C F master foo
A B D E C F master foo Atteignabilité !
None
Rappel • Une branche • Un tag • HEAD :
commit actuel à un instant T Références
Merge
A B D E C F master foo HEAD $
git merge master
A B D E C F master foo $ git
merge master HEAD
A B D E C F master G foo $
git merge master HEAD
A B D E C F master foo G foo
$ git merge master HEAD
A B D E C F master foo G Atteignabilité
! HEAD
fast-forward
A B C E D foo master F HEAD $
git merge foo
A B C E D foo master F $ git
merge foo Atteignable HEAD
C E D foo master F master A B $
git merge foo HEAD
cherry-pick
A B D E C F master foo $ git
cherry-pick F HEAD
master foo F' A B D E C F foo
$ git cherry-pick F HEAD
rebase
$ git rebase master A B D E C F
master foo HEAD
B merge base A D E C F master foo
$ git rebase master HEAD
merge base premier ancêtre commun Atteignable !
A B D E C F master foo Atteignable !
HEAD
A B D E C F master foo C' $
git rebase master HEAD
A B D E C F master foo C' D'
$ git rebase master HEAD
A B D E C F master foo C' D'
foo $ git rebase master HEAD
A B D E C F master C' D' foo
$ git rebase master HEAD
A B D E C F master C' D' foo
Headless $ git rebase master HEAD
Headless non-atteignable depuis une référence susceptible d'être "garbage collecté"
A B D E C F master C' D' foo
$ git reset --hard D foo A B D E C F C' D' HEAD
$ git reflog ... 384b39c HEAD@{10}: merge feature/bdl-auth: Fast-forward 84541fe
HEAD@{11}: checkout: moving from feature/bdl-auth to 384b39c HEAD@{12}: rebase finished: returning to refs/heads/f 384b39c HEAD@{13}: rebase: Add auth bundle
fetch
A B C D master A B master origin local
origin/master
local A B C D master A B master origin
origin/master FETCH !
A B C D master A B master C D
origin/master origin origin/master local
push
A B master A B master origin local C D
A B master A B master origin push D D
local C
A B master A B master A B A B
origin local C D D PAS ATTEIGNABLE
A B master A B master A B A B
origin local C D D NOPE
None
Atteignabilité.
https://speackerdeck.com/ubermuda https://think-like-a-git.net/ Geoffrey Bachelet @ubermuda