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
第3課 書いたコードを管理する(Git)
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
ひでシス
October 31, 2016
Programming
820
0
Share
第3課 書いたコードを管理する(Git)
Gitの使い方を学び、GitHubでコードを世界に公開します。
ひでシス
October 31, 2016
More Decks by ひでシス
See All by ひでシス
第4課 リレーショナルデータベース
hidesys
0
720
第2課 Rubyでプログラミング
hidesys
0
810
第1課 Linuxことはじめ
hidesys
0
900
第1課 Linuxことはじめ 事前準備
hidesys
0
270
Other Decks in Programming
See All in Programming
〜バイブコーディングを超えて〜 チームで実験し続けたAI駆動開発
tigertora7571
0
180
【26新卒研修資料】TDD実装演習
dip_tech
PRO
0
140
「話せることがない」を乗り越える 〜日常業務から登壇テーマをつくる思考法〜
shoheimitani
4
920
ふりがな Deep Dive try! Swift Tokyo 2026
watura
0
250
JOAI2026 1st solution - heron0519 -
heron0519
0
160
AIを導入する前にやるべきこと
negima
2
310
iOS機能開発のAI環境と起きた変化
ryunakayama
0
190
Back to the roots of date
jinroq
0
590
When benchmarks go bad - what I learned from measuring performance wrong
hollycummins
0
200
第3木曜LT会 #28
tinykitten
PRO
0
120
GitHubCopilotCLIをはじめよう.pdf
htkym
0
300
PHP で mp3 プレイヤーを実装しよう
m3m0r7
PRO
0
290
Featured
See All Featured
Context Engineering - Making Every Token Count
addyosmani
9
860
Site-Speed That Sticks
csswizardry
13
1.2k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.3k
BBQ
matthewcrist
89
10k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Agile that works and the tools we love
rasmusluckow
331
21k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.2k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
270
Rails Girls Zürich Keynote
gr2m
96
14k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2k
The Limits of Empathy - UXLibs8
cassininazir
1
320
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.2k
Transcript
書いたコードを管理する(Git) ひでシス=めぐみ・西岡 1
第3課の内容 • ファイルのバージョン管理ソフトについて学び ます – Gitでファイルを管理 – GitHubにアップロードして世界中に公開する 2
バージョン管理ソフトとは • ファイルを管理するときに • プレゼン_20121029.pptx • プレゼン_20121031.pptx • プレゼン_20121031(修正済み).pptx •
プレゼン_20121031(最終稿).pptx • プレゼン_20121031(最終稿)(弄るな!).pptx – とかなっていませんか。 • 複数人でファイルを同時編集するにはどうし ますか。 Gitで解決 3
Gitとは • 分散型バージョン管理システム リポジトリ リポジトリ リポジトリ 分散 4
リポジトリとコミット • リポジトリ – 複数のファイルやディレクトリの状 態を管理するもの – コミットが過去から現在まで枝状 に履歴として保存されている •
コミット – ある一時点での変更内容 コミット リポジトリ 5
ワークツリーとインデックス • ワークツリー – 見えているファイル・ディレクトリ構造 – ここでファイルを編集する • インデックス –
コミットするファイルのリスト ワークツリー インデックス コミット 登録 コミット 取りやめ 6
Gitを使ってみよう! • やること – 前回の課題2ファイルをGitで管理します – 最終的にGitHubを使って世界中に公開します 7
Gitのユーザー設定 • `git config --global user.name "自分の名前"` • `git config
--global user.email メールアドレス` – 自分の行うコミットに焼き付けられます – GitHubに公開すると、公開されますよ! 8
Gitリポジトリの作成 • /home/ユーザー名/nabeatsu ディレクトリを作 成 • 中に、前回の課題の回答2ファイルをコピー • nabeatsuに移動し、`git init
.` – ディレクトリがGitリポジトリになります • `git status`で状態確認 9
インデックスへの登録 • `git add 課題ファイル名1` • `git add 課題ファイル名2` –
ワークツリーにある課題ファイルがインデックスに 登録されます • `git status`で状態確認 – ちなみに、誤ったファイルを登録してしまったとき は、`git remove ファイル名`で取りやめできます 10
コミット • `git commit –m "ナベアツなう"` – インデックスに登録された2ファイルがコミットされ ます •
`git status`で状態確認 11
ローカルリポジトリとリモートリポジトリ ローカル リポジトリ リモート リポジトリ リモート リポジトリ 分散 12
GitHubにリモートリポジトリを作ろう • GitHubとは – Gitのリポジトリを置けるサービス – 内容をWebから見れる – 編集要請を発行することができる –
https://github.com/ 13
GitHubにリモートリポジトリを作ろう 14
リモートリポジトリのアドレスを ローカルリポジトリに登録する • `git remote add origin https://github.com/hidesys/nabeatsu.git` – originという名前でGitHubのアドレスを登録
15
変更内容をプッシュする • `git push -u origin master` – originリモートに対してmasterブランチをpush 16
ブランチとは? • 枝 • コミットの系列に対して 付けられる別名 • 本branchの名前は masterというのが慣例 –
バグ修正の時に新しく ブランチを切り、編集し てからマージする コミット リポジトリ ブランチ(枝) 17
ブランチ関連の操作 • `git branch` – ブランチ一覧の表示 • `git branch 新しいブランチ名`
– 現在のコミットから新しくブランチを作成 • `git checkout ブランチ名` – ワークツリーの内容をブランチに切り替え 18
README.mdを追加するブランチを作 る • `git branch add-readme` – readmeブランチを作成 • `git
branch` – branch一覧を確認 • `git checkout add-readme` – add-readmeブランチに切り替え • `git branch` – branch一覧を確認 19
README.md追加ブランチで編集 • `nano README.md ` – README.mdの中身を作成 • `git status`
– 現状を確認 • `git add README.md` – インデックスに登録 • `git status` – 現状を確認 • `git commit –m "README.md追加"` 20
変更をpush • `git push origin add-readme` – add-readmeブランチをoriginにpush • `git
branch -a` • GitHubで確認 21
変更をマージ • GitHub上でやってみよう 1. add-readmeブランチのmasterブランチへの プルリクエストを作成 2. オッケーならマージボタンを押す 22
変更をpull • `git checkout master` – masterブランチに切り替える • `ls` –
README.mdはこのブランチにはありません • `git pull origin master` – originリモートリポジトリの最新版を取ってくる • `ls` – README.mdが追加されていることを確認 • `git log` – 履歴を確認してみよう! 23
GitHubではなく手元でmergeするには • `git checkout master` – masterブランチに切り替え • `git merge
add-readme` – add-readmeブランチをマージ 24
Gitのログを見よう! • `git log --graph` – マージの様子などが時系列順に見れる! • 最新が下 25
昔のコミットに戻るには? • `git log` – 過去のコミット一覧を参照 • `git checkout コミットハッシュの先頭4文字`
– `git checkout 3f2e`など。 – `git log`で表示されているハッシュを使う • `git branch` – 自分がdedtached headに居ることを確認 • 元に戻るときは`git checkout master` 26
【メンバー向け】 GitHubのOrganizationに参加してね • GitHubアカウントのidを、hidesys, universato 等に教えてください。Organizationに招待しま す。 • 過去のコードや課題などを見れます。 •
https://github.com/onemonthweb 27