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
740
Other Decks in Programming
See All in Programming
どの様にAIエージェントと 協業すべきだったのか?
takefumiyoshii
2
610
『毎日の移動』を支えるGoバックエンド内製開発
yutautsugi
2
180
Reduxモダナイズ 〜コードのモダン化を通して、将来のライブラリ移行に備える〜
pvcresin
2
690
複雑化したリポジトリをなんとかした話 pipenvからuvによるモノレポ構成への移行
satoshi256kbyte
1
770
Your Perfect Project Setup for Angular @BASTA! 2025 in Mainz
manfredsteyer
PRO
0
130
Catch Up: Go Style Guide Update
andpad
0
170
エンジニアとして高みを目指す、 利益を生み出す設計の考え方 / design-for-profit
minodriven
23
12k
NetworkXとGNNで学ぶグラフデータ分析入門〜複雑な関係性を解き明かすPythonの力〜
mhrtech
3
1k
CSC509 Lecture 04
javiergs
PRO
0
300
SpecKitでどこまでできる? コストはどれくらい?
leveragestech
0
520
プロダクト開発をAI 1stに変革する〜SaaS is dead時代で生き残るために〜 / AI 1st Product Development
kobakei
0
490
AIで開発生産性を上げる個人とチームの取り組み
taniigo
0
130
Featured
See All Featured
A Tale of Four Properties
chriscoyier
160
23k
How GitHub (no longer) Works
holman
315
140k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
960
Context Engineering - Making Every Token Count
addyosmani
5
180
Build your cross-platform service in a week with App Engine
jlugia
232
18k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.7k
Typedesign – Prime Four
hannesfritz
42
2.8k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
The Cult of Friendly URLs
andyhume
79
6.6k
Building Applications with DynamoDB
mza
96
6.6k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
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の基本的な概念を ざっくり理解できたよ!