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でバイナリファイルをおいてはいけないかGitの内部構造から考える
Search
Takeshi Kondo
September 05, 2017
Technology
0
2.4k
なぜGitでバイナリファイルをおいてはいけないかGitの内部構造から考える
Takeshi Kondo
September 05, 2017
Tweet
Share
More Decks by Takeshi Kondo
See All by Takeshi Kondo
SRE NEXT CfP チームが語る 聞きたくなるプロポーザルとは / Proposals by the SRE NEXT CfP Team that are sure to be accepted
chaspy
2
1.4k
Slack Platform(Deno) での RAG 実装 - LangChain(js) を使ってみた / rag-implementation-on-slack-platform-deno-experimenting-with-langchain-js
chaspy
0
220
SRE の考えをマネジメントに活かす / applying SRE ideas to management
chaspy
7
7.6k
RAGの簡易評価によるフィードバックサイクル実践 / Feedback cycle practice through simplified assessment of RAGs
chaspy
2
5.5k
定量データと定性評価を用いた技術戦略の組織的実践 / Systematic implementation of technology strategies using quantitative data and qualitative evaluation
chaspy
9
1.9k
エンジニアブランディングチームの KPI / KPI's of engineer branding team
chaspy
2
2.2k
「SLO Review」今やるならこうする / If I had to do the "SLO Review" again
chaspy
3
2k
開発者とともに作る Site Reliability Engineering / SREing with Developers
chaspy
10
8.4k
自己診断能力の獲得を目指して / Toward the acquisition of self-diagnostic skills
chaspy
1
5.2k
Other Decks in Technology
See All in Technology
Goss: Faiss向けの新しい本番環境対応 Goバインディング #coefl_go_jp
bengo4com
1
1.4k
つくって納得、つかって実感! 大規模言語モデルことはじめ
recruitengineers
PRO
30
11k
Grafana Meetup Japan Vol. 6
kaedemalu
1
170
実践アプリケーション設計 ②トランザクションスクリプトへの対応
recruitengineers
PRO
4
1.1k
プロダクトの成長に合わせたアーキテクチャの段階的進化と成長痛、そして、ユニットエコノミクスの最適化
kakehashi
PRO
1
110
Webアクセシビリティ入門
recruitengineers
PRO
3
1.3k
進捗
ydah
1
210
まだ間に合う! StrandsとBedrock AgentCoreでAIエージェント構築に入門しよう
minorun365
PRO
9
360
新規案件の立ち上げ専門チームから見たAI駆動開発の始め方
shuyakinjo
0
580
JuniorからSeniorまで: DevOpsエンジニアの成長ロードマップ
yuriemori
2
330
Lessons from CVE-2025-22869: Memory Debugging and OSS Vulnerability Reporting
vvatanabe
2
110
モバイルアプリ研修
recruitengineers
PRO
5
1.5k
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
19k
How to Think Like a Performance Engineer
csswizardry
26
1.8k
A better future with KSS
kneath
239
17k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
How STYLIGHT went responsive
nonsquared
100
5.8k
Fireside Chat
paigeccino
39
3.6k
Imperfection Machines: The Place of Print at Facebook
scottboms
268
13k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Making the Leap to Tech Lead
cromwellryan
134
9.5k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Transcript
ͳͥGitͰόΠφϦϑΝΠ ϧΛ͓͍͍͚ͯͳ͍͔ Gitͷ෦ߏ͔Βߟ͑Δ 2017/08/31 kondo takeshi
Git͓͡͞Μ
΅͘ʮ͜Εยํ͍Βͳ͘ͳ͍ʁ ফͦ͏Αʯ ͱ͋ΔHJUϦϙδτϦ @QBUDI @QBUDI
ޙഐ͘Μʮ͑ʔʁফ͢ΜͰ͢ ͔ʔʁԿ͔ා͍ͬ͢oldͰ͍͍ Ͱ͔͢ʔʁʯ
΅͘ʮGit͕֮͑ͯͯ͘ΕΔ͔ Βʂʂʂʂʂʂoldͱ͔Ί Ζʂʂʂʂʂʂʂʂʂʂʯ
ͳΜͱ͔खॱॻ_draft.docx
΅͘ʮdraftϒϥϯνͬͯ ΕΑʂʂʂʂʂͬ͞͞ͱ rename͠Ζʂʂʂʂʂʯ
νʔϜͷGitྗ্͕՝ • GitϑΝΠϧαʔό͡Όͳ͍ʂʂʂ • masterpushΊΖʂʂʂ • खॱॻϨϏϡʔϓϩηεΛMRͰΓ͍ͨɻɻ • ->ͭ·Γdiff͕͏·͘ग़ͳ͍WordΛ͜Ζ͢
$ git init > Initialized empty Git repository in /Users/take/
gitlab/.git/
$ ls .git > HEAD config description hooks info objects
refs
.gitɺ͋Γ·͢Ͷʁ
.gitɺ͋Γ·͢Α
.git • Gitͯ͢ͷཧใΛ.gitҎԼʹू • .gitͷதΛݟ͍ͯ͘͜ͱͰɺͲ͏ͬͯόʔ δϣϯཧΛ࣮ݱ͍͔ͯ͘͠ݟ͍ͯ͘
gitͷΦϒδΣΫτ CMPC ϑΝΠϧͷσʔλ USFF CMPCͷࢀরͱɺ ֊ͷσΟϨΫτϦใ DPNNJU มߋ࣌ͷϝλσʔλͱɺ USFFͷࢀর UBH
DPNNJUͷࢀর
gitͷΦϒδΣΫτ GitӳจϚχϡΞϧΛಡΉͨΊͷ༧උࣝ http://tokkonopapa.github.io/blog/2012/01/17/prior-knowledge-for-git-manual/
ςΩετϑΝΠϧͷ߹ $ echo "hello git" > hello_git.txt $ git add
hello_git.txt $ git commit -m "hello git” [master (root-commit) aaa6ce7] hello git 1 file changed, 1 insertion(+) create mode 100644 git_test/hello_git.txt > Ҏ߱σϞͰʂ
όΠφϦϑΝΠϧͷ߹ ը૾ϑΝΠϧͷมߋ > Ҏ߱σϞͰʂ https://pixlr.com/editor/
εφοϓγϣοτΜʂ ࠩཧ͡Όͳ͍Μʂ
git gc
git-gcͱpackfile • git-gcʹΑΓطଘͷΦϒδΣΫτআ͞Εɺ pack-*.idxͱpack-*.packϑΝΠϧ͕ੜ • ͨͿΜ͜͜Ͱdeltaѹॖͯ͠Δ
େ༰ྔϑΝΠϧΛߋ৽ͯ͠ΈΔ $ sec 1 10000000 > sec.txt $ git gc
Counting objects: 18, done. Delta compression using up to 4 threads. Compressing objects: 100% (14/14), done. Writing objects: 100% (18/18), done. Total 18 (delta 3), reused 11 (delta 0) > Ҏ߱σϞͰʂ
όΠφϦϑΝΠϧͷԿ͕μϝʁ • ୯ʹdiff͕ݟΕͳ͍ • merge࣌ʹconflict͢Δͱࢮ͵ • ͕ࠩଟ͘ग़ΔՄೳੑ͕͋ΔͷͰɺpackʹΑ Δѹॖޮ͕ѱ͍
·ͱΊ • ຊʹ͍͚ͯ͠ͳ͍ͷʮڊେόΠφϧϑΝΠϧʯ ͷadd • -> Git LFSͲ͏ͧ • commitεφοϓγϣοτ(blog)Λੜ͠ɺpackͰ
ࠩอଘʹΑΔѹॖ • ͦΕҎ֎શͯࢀরͷϦϨʔ
͓·͚ɿWordόΠφϦͱ͍ ͏Θ͚Ͱͳ͍ • Wordͷதzip͞Εͨxml • ͔ͩΒgitͰdiffͱΔͱԿ͔͠Βݟ͑Δ • ࢀߟɿWord͞Μࠓ͓͔ͭΕͰ͢ • http://qiita.com/kaityo256/items/
c15889dbb7acb2632c6e
Reference • ΤϯδχΞͷͨΊͷGitͷڭՊॻʦ্ڃฤʧ Git෦ͷΈΛཧղ͢Δ • https://www.amazon.co.jp/exec/obidos/ASIN/B01AAIN85K/ takeshe11-22/ • ʮΤϯδχΞͷͨΊͷgitڭՊॻʯ͔Βgitͷ෦ߏΛֶͿɹ࣮ફฤͦͷ1 •
http://take-she12.hatenablog.com/entry/2017/08/10/120000 • ʮΤϯδχΞͷͨΊͷgitڭՊॻʯ͔Βgitͷ෦ߏΛֶͿɹ࣮ફฤͦͷ2 • http://take-she12.hatenablog.com/entry/2017/08/12/120000