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 ゼンゼン ムズカシクナイ
Search
TomPenguin
June 23, 2021
Programming
0
550
Git ゼンゼン ムズカシクナイ
TomPenguin
June 23, 2021
Tweet
Share
More Decks by TomPenguin
See All by TomPenguin
Domain Modelを共有していい感じにプロダクトを作る
tompenguin
0
330
【JavaScript】Strategy Patternっぽいのをちょい使いしてif分を駆逐する
tompenguin
0
210
【JavaScript】クロージャを理解して正しく使う
tompenguin
0
520
あきらめる Atomic Design
tompenguin
5
730
Other Decks in Programming
See All in Programming
パスタの技術
yusukebe
1
270
Understanding Kotlin Multiplatform
l2hyunwoo
0
250
Vibe Codingの幻想を超えて-生成AIを現場で使えるようにするまでの泥臭い話.ai
fumiyakume
21
10k
新しいモバイルアプリ勉強会(仮)について
uetyo
1
250
AIに安心して任せるためにTypeScriptで一意な型を作ろう
arfes0e2b3c
0
340
MCP連携で加速するAI駆動開発/mcp integration accelerates ai-driven-development
bpstudy
0
290
Go製CLIツールをnpmで配布するには
syumai
2
1.2k
Reactの歴史を振り返る
tutinoko
1
180
Bedrock AgentCore ObservabilityによるAIエージェントの運用
licux
9
610
Nuances on Kubernetes - RubyConf Taiwan 2025
envek
0
140
0から始めるモジュラーモノリス-クリーンなモノリスを目指して
sushi0120
0
280
[DevinMeetupTokyo2025] コード書かせないDevinの使い方
takumiyoshikawa
2
280
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.4k
Balancing Empowerment & Direction
lara
1
540
A designer walks into a library…
pauljervisheath
207
24k
Building an army of robots
kneath
306
45k
Testing 201, or: Great Expectations
jmmastey
45
7.6k
Navigating Team Friction
lara
188
15k
Practical Orchestrator
shlominoach
190
11k
Writing Fast Ruby
sferik
628
62k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Music & Morning Musume
bryan
46
6.7k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
332
22k
Transcript
Git ゼンゼン ムズカシクナイ TomPenguin karabiner, inc 2021/06/23
あなたは誰ですか? Vue.jsばっかりさわっているエンジニア 仙台から福岡のシステム開発会社へフル リモートで勤務 昔は仙台の某百貨店の店員 TomPenguin tompenguin_ Work at karabiner,
inc
どんな話をするのか Gitの勉強を自分でするための足がかりの話
Gitってなあに? ソースコードの変更履歴とかを管理するアプリだよ
じゃあよく聞くGithubって? プロジェクト管理サービスだよ。 メールとGmailの関係に似てるよ。
Gitがない世界だと何が起きるのか 😵 誰かの変更を上書き保存で消してしまった 😵 誰かがどこをどんな風に修正したのか分からない 😵 あの時リリースしたのに戻したいけど保存しとくの忘れて た
本家と分家 Gitではソースコードを本家と分家(コピー)と いう形で2重管理するんだよ。 こうしておけば分家でどんなにトチっても安 心っていうことなんだね。 本家をリモートリポジトリ、分家をローカル リポジトリと言うよ。 分家のつくり方 本家 (リモートリポジトリ)
分家 (ローカルリポジトリ)
安全に作業できる作業箱 Gitでは「やりたいこと」ごとに作業箱を用意す るんだ。例えば、ヘッダーを実装する、とかね。 作業箱には全てのソースコードのコピーが 入ってる。そこに、修正を加えていくんだ。 作業箱のつくり方 作業箱のことは ブランチと言うよ
一番偉い作業箱 色々な人が色々な作業箱を作って修正を加えていくけど、 一番偉い作業箱っていうのがあるんだ。それは大体、 main か master って名前がつけられてる。本番環境にはこ の一番偉い作業箱を広げるのが基本だよ。
鎖で繋がった作業箱 作業箱どうしは鎖で繋がっていて、どこからコ ピーしてきたかわかるようになってるんだ。分家 を作った時は、これら全ての作業箱のコピーも 作られるんだよ。
作業箱の切り替え 作業箱を作っただけではすぐに作業できない。い ちど、作業台の上に広げる必要があるんだ。 (こうすれば、ある作業を途中でやめて、別の作業にとりかかったりでき るよね) 作業箱を切り替えることをチェックアウトとい うよ。 作業箱の切り替え方
どこを修正したかメモをとる 修正したら、どういう修正をしたのかルーズ リーフにメモを取らないと行けない。この ルーズリーフをコミットと言うよ。 実は、ルーズリーフにいきなり修正を書くのではなく、いったんルー ズリーフに何を書くのかメモっておく場所がある。その場所をイン デックスと言うんだ。 ルーズリーフのしまい方
作業箱を本家に献上しよう! よ〜し、ようやく一通り作業が終わったぞ👏 それじゃあ、分家の作業箱のコピーを本家に 献上しよう! これをプッシュと言うんだ。 分家 (ローカルリポジトリ) 本家 (リモートリポジトリ) プッシュ
プッシュのやり方
本家の一番偉い作業箱に取り込まれたら おめでとう🎉 これできみはGitの基本的な概念を ざっくり理解できたよ!