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
巨大リポジトリはパーシャルクローンしようね。
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
えび
May 22, 2025
0
17
巨大リポジトリ はパーシャルクローン しようね。
えび
May 22, 2025
Tweet
Share
More Decks by えび
See All by えび
XcodeのLLDB(ブレークポイント)に入門する
ebibibibibi
0
34
インタプリタ言語が 実行環境の差異を 吸収する仕組みを あさーく理解する
ebibibibibi
0
70
CocoaPodsはなぜRuby製か
ebibibibibi
1
190
通勤をゆたかにする技術 ~通勤中に耳でSwiftを学んだら5kg痩せて精神が安定した話~
ebibibibibi
0
190
丸め誤差発生の仕組みと向き合い方
ebibibibibi
0
130
バブルソートでPHPに入門する
ebibibibibi
0
160
影響範囲調査をする技術
ebibibibibi
0
140
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
340
58k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
790
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
150
Designing for humans not robots
tammielis
254
26k
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.4k
Mind Mapping
helmedeiros
PRO
1
130
Deep Space Network (abreviated)
tonyrice
0
96
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.5k
Optimizing for Happiness
mojombo
378
71k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
Transcript
巨大リポジトリ はパーシャルクローン しようね。 #02 札幌開催:はじめてのIT勉強会 in 札幌(2025) えび(@025cm)
クローンの種類 • フルクローン • シャロークローン • パーシャルクローン
フルクローン • たぶんいつもみなさんがやっているやつ。 • すべての履歴・すべてのファイルをローカルに丸ごとコピーす ること。
シャロークローン • 履歴を深さ(=commitの数)で制限してクローンするモードの こと • 取得した履歴の範囲内でしか、歴史を操ることができない
パーシャルクローン • コミットとツリーだけをダウンロードして、 「ファイルの中身 (ブロブ)」は持ってこないモード • 履歴操作もできる!!
blob オブジェクト • blobとは Gitのオブジェクトの1種で、「ファイルの中身そのも の」を保存しているもの • Binary Large OBject
の略で、git add 実行時に .git/objects 配 下へ作成される
commitオブジェクト • commit は、「この時点でのスナップショットはこのtreeだっ た」と記録するオブジェクト。 • 中身は:tree のハッシュ(=どの構造・内容だったか)・親の commit(履歴をつなぐ)・作者・日付・メッセージ
tree オブジェクト • ある時点のディレクトリ構成(フォルダ・ファイルの階層)を 表すGitオブジェクト。 • 中身は「ファイル名・パーミッション・それが指すblobやtree オブジェクトのハッシュ値」
構造のイメージ
Gitは「差分」ではなく 「スナップショット」
blobがなにかを知っていれば、 自然な発想でパーシャルクローンは出てきそう。 基礎は大事ですね
さいごに • パーシャルクローン最強説。 • シャロークローンの勝ちポイントをよくわかってない。なにか 思いつくところがあったら教えて欲しい!