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
520
Git ゼンゼン ムズカシクナイ
TomPenguin
June 23, 2021
Tweet
Share
More Decks by TomPenguin
See All by TomPenguin
Domain Modelを共有していい感じにプロダクトを作る
tompenguin
0
280
【JavaScript】Strategy Patternっぽいのをちょい使いしてif分を駆逐する
tompenguin
0
190
【JavaScript】クロージャを理解して正しく使う
tompenguin
0
470
あきらめる Atomic Design
tompenguin
5
700
Other Decks in Programming
See All in Programming
subpath importsで始めるモック生活
10tera
0
310
エンジニアとして関わる要件と仕様(公開用)
murabayashi
0
300
型付き API リクエストを実現するいくつかの手法とその選択 / Typed API Request
euxn23
8
2.2k
OSSで起業してもうすぐ10年 / Open Source Conference 2024 Shimane
furukawayasuto
0
110
as(型アサーション)を書く前にできること
marokanatani
10
2.7k
ふかぼれ!CSSセレクターモジュール / Fukabore! CSS Selectors Module
petamoriken
0
150
よくできたテンプレート言語として TypeScript + JSX を利用する試み / Using TypeScript + JSX outside of Web Frontend #TSKaigiKansai
izumin5210
6
1.7k
.NET のための通信フレームワーク MagicOnion 入門 / Introduction to MagicOnion
mayuki
1
1.7k
距離関数を極める! / SESSIONS 2024
gam0022
0
290
Nurturing OpenJDK distribution: Eclipse Temurin Success History and plan
ivargrimstad
0
960
Figma Dev Modeで変わる!Flutterの開発体験
watanave
0
140
Creating a Free Video Ad Network on the Edge
mizoguchicoji
0
120
Featured
See All Featured
Statistics for Hackers
jakevdp
796
220k
Intergalactic Javascript Robots from Outer Space
tanoku
269
27k
The Language of Interfaces
destraynor
154
24k
Designing on Purpose - Digital PM Summit 2013
jponch
115
7k
What's in a price? How to price your products and services
michaelherold
243
12k
Building Adaptive Systems
keathley
38
2.3k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
How to train your dragon (web standard)
notwaldorf
88
5.7k
Raft: Consensus for Rubyists
vanstee
136
6.6k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.5k
Mobile First: as difficult as doing things right
swwweet
222
8.9k
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の基本的な概念を ざっくり理解できたよ!