Upgrade to Pro — share decks privately, control downloads, hide ads and more …

仕組みから理解する Git 入門 ~ ひとり開発でも便利 ~

仕組みから理解する Git 入門 ~ ひとり開発でも便利 ~

配信動画はこちら
https://www.youtube.com/watch?v=qerW4vBftNA

もし良かったらムーザルちゃんねるのチャンネル登録お願いします!
https://www.youtube.com/channel/UCLPHXwLp90A5R69Eltxo-sg

Twitter でもプログラミングネタをつぶやいているのでフォローお待ちしております。
ムー
https://twitter.com/mu_vpoe
zaru
https://twitter.com/zaru

mu_zaru

July 02, 2020
Tweet

More Decks by mu_zaru

Other Decks in Programming

Transcript

  1. 仕組みから理解する Git 入門 〜ひとり開発でも便利〜 YouTube Live (2020.07.02 Thur. 21:00~) CTO

    と VPoE が初学者向けに講義する オンライン勉強会です。 随時質問なども受け付けていますので、 お気軽にどうぞ。 ハッシュタグ #mu_zaru
  2. ファイル v1 コード 書いたぞ ファイル v2 ファイル v1 機能を追 加したぞ

    やっぱり 戻したい バージョン2へ バージョン1へ戻す 6/20 6/24 7/1 変更履歴があると 元に戻せる
  3. 変更履歴があると 振り返れる みんなで同じファイルを 編集した場合、変更履歴 があれば、いつ誰がどん な修正をしたのか振り返 ることが可能。 ファイル コード 書くぞ

    ファイル 機能追加 しよう 修正 しよう Aさん Bさん Cさん ここは 削除しよう Dさん Aさん 誰がこの修正 をしたんだろ う?
  4. みんなで同じファイルを 編集した場合、変更履歴 があれば、いつ誰がどん な修正をしたのか振り返 ることが可能。 ファイル コード 書くぞ ファイル 機能追加

    しよう 修正 しよう Aさん Bさん Cさん ここは 削除しよう Dさん Aさん 誰がこの修正 をしたんだろ う? この意味不明な コード、誰が書 いたんだ? あ、昨日の 自分だった… 個人開発であっても 昨日の自分は他人 という 観点でバージョン管理をした方がいい。 変更履歴があると 振り返れる
  5. 最も原始的な管理は ファイルコピー ファイル 記事.txt ファイル 記事_20200621.txt ファイル 記事_20200618.txt 変更するたびにファイルを コピーして名前をつけておく…

    あ、コピー するの忘れた… 記事_最新.txt 記事_最終修正済み.txt 記事_最終修正済み(1).txt カオスなファイル名になりがち 作業ミスが発生したり Git を使えば、いくつかのコマンド操作で 全部自動でよしなに管理してくれる
  6. working tree ファイル index ファイル repository ファイル add commit Git

    の 操作と 流れの イメージ 作業をする場所 履歴を保存する候補 履歴データ Git に追加してねと お願いをするコマンド Git に保存してねと お願いをするコマンド add や commit と いったコマンドを 使って Git に管理 をしてもらう
  7. working tree ファイル index ファイル local repository ファイル add commit

    GitHub はリモート保管所 remote repository ファイル push GitHub GitHub は Git のデータを保存してくれるサー ビス。インターネット上に置いて、色んな人が ファイルにアクセスすることができる。 Git に GitHub に送信して ねとお願いするコマンド
  8. GitHub ファイル コード 書いたぞ 改良しよう 不具合 直そう GitHub でチーム開発 GitHub

    にデータが集約されているので、色んな人が Git を使って開発をすることができる。また、個人でも違う パソコンでの開発もやりやすくなる。
  9. git init で初期化する $ cd ~/Desktop/sample_project $ git init ここで

    git init したら、ここ以下の フォルダやファイル全てが Git 管理 になる
  10. git add の使い方 working tree ファイル index ファイル repository ファイル

    add commit 変更ファイルを index に登録する。 (厳密には変更した箇所を登録することができる)
  11. git commit の使い方 working tree ファイル index ファイル repository ファイル

    add commit Repository に変更を記録。 このとき変更内容を、文章で記載しておく必要がある。 この文章をコミットメッセージと言う c3 c2 c1 index.html ファイル を追加 Hoge クラスを追加 hoge メソッド を追加 ※コミットメッセージ
  12. git commit の使い方 commit コマンドで add したファイルを対象に、変更履歴を記録 します。コミットメッセージを指定することで、何の変更をした のかを分かりやすくします。 git

    commit -m 'コミットメッセージ' git add zaru.txt # zaru.txt を対象に追加 git commit -m 'zaru のプロフィールを編集' # 記録 どんな内容をコミットしたのかが分かるようなメモを書ける
  13. コミットを特定する commit ID commit ID commit したら自動で発 行されるこの文字列は commit ID

    (通称) と言わ れるもので、コミットを 特定するためのキーワー ドのようなもの。 40文字だが、先頭の7文 字で省略して使ったりす る。
  14. 記録を見る git log commit で記録した差分は git log コマンドで確認ができます。 git log

    いろいろなオプションがあり、最も覚えられないコマンドのよう な気がするので、素直に Git クライアントアプリを使った方が効 率的です(個人の見解)。
  15. コードを残して 色々試したい ブランチを使えば、今のコードを残したまま別の環境を作ること ができる。ブランチは何個でも作れ、切り替えが可能。 C C C master C C

    feature ブランチ名 master ブランチを残したまま、 コピーして新しくブランチを作る ことができる。 ブランチは 切り替えが 可能 コミット メインブランチ 別ブランチ
  16. ブランチ操作 switch / branch ブランチの切り替えや、作成は switch を使う。 git switch ブランチ名

    # 指定ブランチに切り替え git switch -c 新しいブランチ名 # 指定ブランチを作成 ブランチの一覧表示や削除は branch を使う。 git branch   # ブランチ一覧を表示 git branch -d ブランチ名 # 指定ブランチを削除
  17. 試した成果を merge で反映 別のブランチのコミットを持ってきて反映させることを マージ merge と言う。 C C C

    master C C feature 無事、マージできたら、 このブランチは削除する こちらに反映させる コミット C ここで作業した内容を C
  18. 元に戻す restore restore は色々な方法でファイルの修正を戻すことができます。 git restore . --source 戻したい場所 #

    指定位置まで戻す git restore . --source HEAD~2 # 2個前のコミットまで全て戻す C C C master C C C C master C HEAD HEAD~1 HEAD~2