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
420
0
Share
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
720
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
230
A multi-container Symfony2 setup with Docker
ubermuda
40
12k
Docker Introduction
ubermuda
5
520
Symfony 2, un framework robuste et moderne
ubermuda
5
210
Migration d'une base de code subversion vers git
ubermuda
0
130
Other Decks in Technology
See All in Technology
レガシーシステムをどう次世代に受け継ぐか
tachiiri
0
320
Oracle AI Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
4
2.2k
機能・非機能の学びを一つに!Agent Skillsで月間レポート作成始めてみた / Unifying Bug & Infra Insights — Building Monthly Quality Reports with Agent Skills
bun913
5
3.8k
AIを活用したアクセシビリティ改善フロー
degudegu2510
1
160
見えない開発現場を、見える投資に変える
rojoudotcom
2
110
新規サービス開発におけるReact Nativeのリアル〜技術選定の裏側と実践的OSS活用〜
grandbig
2
160
40代からのアウトプット ― 経験は価値ある学びに変わる / 20260404 Naoki Takahashi
shift_evolve
PRO
5
910
仕様通り動くの先へ。Claude Codeで「使える」を検証する
gotalab555
8
3.1k
Bluesky Meetup in Tokyo vol.4 - 2023to2026
shinoharata
0
120
最大のアウトプット術は問題を作ること
ryoaccount
0
320
2026年度新卒技術研修 サイバーエージェントのデータベース 活用事例とパフォーマンス調査入門
cyberagentdevelopers
PRO
5
6.6k
AI時代に新卒採用、はじめました/junior-engineer-never-die
dmnlk
0
230
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
Designing for Performance
lara
611
70k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.6k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.1k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
870
Optimising Largest Contentful Paint
csswizardry
37
3.6k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.7k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
410
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
110k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.1k
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