Successfully reported this slideshow.
Your SlideShare is downloading. ×

Git超入門_座学編.pdf

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad

Check these out next

1 of 49 Ad

More Related Content

Slideshows for you (20)

Similar to Git超入門_座学編.pdf (20)

Advertisement

Recently uploaded (20)

Git超入門_座学編.pdf

  1. 1. Tech Dojo いまからでも遅くない! Git超入門(座学編) 2022年12月09日 IBM Developer 18時開始予定です! マイクをオフにして お待ちください。
  2. 2. 2 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation 自己紹介 村田 憲昭 北海道北斗市 スノーボード、登山、グルメ、猫 カスタマーサクセス DX人材育成/教育(IT全般) スクラムマスター 半導体アプリエンジニア 某コンビニのエンジニア 名前 生息地 趣味 経歴
  3. 3. 3 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation 免責事項 本資料に含まれる情報は可能な限り正確を期しておりますが、 記載された内容に関して、日本アイ・ビー・エム株式会社が 何ら保証するものではありません。 従って、本資料の情報の利用は使用者の責任において 為されるものであり、資料の内容によって受けた 如何なる被害に関しても一切の補償をするものではありません。
  4. 4. 4 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation 研修のゴール Gitの基本的な概念がわかる
  5. 5. 5 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation 本日のアジェンダ 1 .バージョン管理システムとは 2 .Git、GitHubとは 3 .Git全体像 4 .Gitコマンドの理解(コミット、initなど) 5 .Gitコマンドの理解(ブランチ、マージ、コンフリクト) 6 .Gitコマンドの理解(プッシュ、クローン、フェッチ、プル) 7 .Gitコマンドの理解(プルリクエスト、ブランチ戦略)、デモ
  6. 6. 6 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation 本日のアジェンダ 1 .バージョン管理システムとは 2 .Git、GitHubとは 3 .Git全体像 4 .Gitコマンドの理解(コミット、initなど) 5 .Gitコマンドの理解(ブランチ、マージ、コンフリクト) 6 .Gitコマンドの理解(プッシュ、クローン、フェッチ、プル) 7 .Gitコマンドの理解(プルリクエスト、ブランチ戦略)、デモ
  7. 7. 7 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation バージョン管理システムとは ファイルに対して 「いつ」 「誰が」「何を変更したか」 というような情報を記録することで、 過去のある時点の状態を「復元」したり 変更内容の「差分」を表示できるように 「バージョン」を付けて管理するシステム
  8. 8. 8 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation バージョン管理システムとは バージョン管理しない場合のファイル管理は・・・ 最新のファイル はどれだっけ? プレゼン.pptx あ、上書き しちゃった・・
  9. 9. 9 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation バージョン管理システムとは バージョン管理すると・・・ 差分が一目で わかる! プレゼン.pptx 警告出たので いま上書きでき ないね! 以前の状態に 戻せる! 誰が、いつ、どのファイル を変更したか一目瞭然
  10. 10. 10 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation 本日のアジェンダ 1 .バージョン管理システムとは 2 .Git、GitHubとは 3 . Git全体像 4 .Gitコマンドの理解(コミット、initなど) 5 .Gitコマンドの理解(ブランチ、マージ、コンフリクト) 6 .Gitコマンドの理解(プッシュ、クローン、フェッチ、プル) 7 .Gitコマンドの理解(プルリクエスト、ブランチ戦略)、デモ
  11. 11. 11 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation Git、GitHubとは Gitとは・・・ ・リーナス・トーバルズが開発 ・Linuxカーネル開発時に誕生 ・分散バージョン管理システム "File:LinuxCon Europe Linus Torvalds 03 (cropped).jpg" by Krd (photo)Von Sprat (crop/extraction) is licensed under CC BY-SA 4.0. To view a copy of this license, visit https://creativecommons.org/licenses/by-sa/4.0?ref=openverse. ・大規模プロジェクト向き
  12. 12. 12 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation Git、GitHubとは Git以外の中央集中型バージョン管理システム ➀取得 ➂反映 ➁変更 リモート リポジトリ
  13. 13. 13 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation Git、GitHubとは Gitなどの分散型バージョン管理システム リモート リポジトリ ➁変更 ローカル リポジトリ ローカル リポジトリ ➀取得 ➂反映 Githubなど
  14. 14. 14 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation Git、GitHubとは Git以外の中央集中型バージョン管理システム ・オフラインでは履歴の照会ができない ・自分の編集が他のメンバーへ影響を与える →編集中は他の人は同じファイルを編集できない ・リモートリポジトリが消滅すると復旧できない
  15. 15. 15 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation Git、GitHubとは Gitなどの分散型バージョン管理システム ・自分の編集が他のメンバーへ影響を与えない →編集中でも他の人は同じファイルを編集できる ・オフラインでも履歴の照会ができる ・リモートリポジトリが消滅しても復旧できる
  16. 16. 16 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation ・ソースコードの ホスティングサービス ・クリス・ワンストラスらが開発 ・他にもGitLab、BitBucket ・SNS、IDE、CI/CD・・・ Git、GitHubとは GitHubとは・・・ "Gotham Ruby Conference 2008" by sd is licensed under CC BY-NC-SA 2.0. To view a copy of this license, visit https://creativecommons.org/licenses/by-nc-sa/2.0/?ref=openverse.
  17. 17. 17 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation Git、GitHubとは リポジトリいろいろ1(OSS系) https://github.com/nodejs/node
  18. 18. 18 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation Git、GitHubとは https://github.com/trekhleb/javascript-algorithms リポジトリいろいろ2(サンプル系)
  19. 19. 19 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation Git、GitHubとは https://github.com/aws-amplify-jp/awesome-aws-amplify-ja リポジトリいろいろ3(まとめ系)
  20. 20. 20 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation Git、GitHubとは https://github.com/IBM/japan-technology IBMも公開してます
  21. 21. 21 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation 本日のアジェンダ 1 .バージョン管理システムとは 2 .Git、GitHubとは 3 .Git全体像 4 .Gitコマンドの理解(コミット、initなど) 5 .Gitコマンドの理解(ブランチ、マージ、コンフリクト) 6 .Gitコマンドの理解(プッシュ、クローン、フェッチ、プル) 7 .Gitコマンドの理解(プルリクエスト、ブランチ戦略)、デモ
  22. 22. 22 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation リモート リポジトリ 変更 ローカル リポジトリ ローカル リポジトリ 取得 Githubなど (おさらい)Gitなどの分散型バージョン管理システム 反映 Git全体像
  23. 23. 23 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation インデックス ワークツリー ローカル リポジトリ リモート リポジトリ 概要図と登場人物(作業場所や保存場所) Githubなど Git全体像 作業場所 更新準備 ローカル 保存場所 リモート 保存場所
  24. 24. 24 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation 本日のアジェンダ 1 .バージョン管理システムとは 2 .Git、GitHubとは 3 .Git全体像 4 .Gitコマンドの理解(コミット、initなど) 5 .Gitコマンドの理解(ブランチ、マージ、コンフリクト) 6 .Gitコマンドの理解(プッシュ、クローン、フェッチ、プル) 7 .Gitコマンドの理解(プルリクエスト、ブランチ戦略)、デモ
  25. 25. 25 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation commit add インデックス ワークツリー ローカル リポジトリ リモート リポジトリ Gitワークフローと基本的なコマンドとの対応 init ローカルリポジトリ作成 status Githubなど Gitコマンドの理解(コミット、initなど)
  26. 26. 26 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation init、 add、status、commit init ・・・ ローカルリポジトリを作成する add ・・・ ファイルをインデックスに追加する status ・・・ ワークツリーの状況を表示する commit ・・・ インデックスにあるファイルを ローカルリポジトリに追加する Gitコマンドの理解(コミット、initなど)
  27. 27. 27 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation 本日のアジェンダ 1 .バージョン管理システムとは 2 .Git、GitHubとは 3 .Git全体像 4 .Gitコマンドの理解(コミット、initなど) 5 .Gitコマンドの理解(ブランチ、マージ、コンフリクト) 6 .Gitコマンドの理解(プッシュ、クローン、フェッチ、プル) 7 .Gitコマンドの理解(プルリクエスト、ブランチ戦略)、デモ
  28. 28. 28 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation commit add インデックス ワークツリー ローカル リポジトリ リモート リポジトリ Gitワークフローと基本的なコマンドとの対応 init ローカルリポジトリ作成 status branch merge checkout Gitコマンドの理解(ブランチ、マージ、コンフリクト) Githubなど
  29. 29. 29 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation ブランチ A B C H Z リリース 履歴 バグ 履歴 機能追加 履歴 Gitコマンドの理解(ブランチ、マージ、コンフリクト)
  30. 30. 30 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation マージ C H D J Index.html Index.html Index.html Gitコマンドの理解(ブランチ、マージ、コンフリクト)
  31. 31. 31 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation コンフリクト B C H D J コンフリクト Gitコマンドの理解(ブランチ、マージ、コンフリクト)
  32. 32. 32 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation 本日のアジェンダ 1 .バージョン管理システムとは 2 .Git、GitHubとは 3 .Git全体像 4 .Gitコマンドの理解(コミット、initなど) 5 .Gitコマンドの理解(ブランチ、マージ、コンフリクト) 6 .Gitコマンドの理解(プッシュ、クローン、フェッチ、プル) 7 .Gitコマンドの理解(プルリクエスト、ブランチ戦略)、デモ
  33. 33. 33 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation push commit add インデックス ワークツリー ローカル リポジトリ リモート リポジトリ Gitワークフローと基本的なコマンドとの対応 init clone ローカルリポジトリ作成 status branch merge checkout Gitコマンドの理解(プッシュ、クローン、フェッチ、プル) pull/fetch Githubなど
  34. 34. 34 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation プッシュ ローカルリポジトリにある対象データを、リモートリポジトリにアップロードすること push ローカル リポジトリ リモート リポジトリ Githubな ど Gitコマンドの理解(プッシュ、クローン、フェッチ、プル)
  35. 35. 35 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation クローン リモートリポジトリにある情報を、ローカルリポジトリにまるごとコピーすること (同時にローカルリポジトリも作成) clone ローカル リポジトリ リモート リポジトリ Githubなど Gitコマンドの理解(プッシュ、クローン、フェッチ、プル)
  36. 36. 36 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation フェッチ リモートリポジトリ から最新の更新情報を取得して、ローカルリポジトリを最新化すること fetch ローカル リポジトリ リモート リポジトリ Githubなど Gitコマンドの理解(プッシュ、クローン、フェッチ、プル)
  37. 37. 37 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation プル リモートリポジトリ から最新の更新情報を取得して、ローカルリポジトリを最新化して、 手元のソースとマージすること(fetch+merge) pull ローカル リポジトリ リモート リポジトリ Githubなど Gitコマンドの理解(プッシュ、クローン、フェッチ、プル)
  38. 38. 38 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation 本日のアジェンダ 1 .バージョン管理システムとは 2 .Git、GitHubとは 3 .Git全体像 4 .Gitコマンドの理解(コミット、initなど) 5 .Gitコマンドの理解(ブランチ、マージ、コンフリクト) 6 .Gitコマンドの理解(プッシュ、クローン、フェッチ、プル) 7 .Gitコマンドの理解(ブランチ戦略、プルリクエスト)、デモ
  39. 39. 39 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation ブランチ戦略 git-flow master(main) develop feature release hotfix プロダクトとしてリリースする用のブランチ。リリースしたらタグ付けする。 リリース後の緊急対応(クリティカルなバグフィックスなど)用。 開発用ブランチ。コードが安定し、リリース準備ができたらreleaseへマージ する。 機能の追加用。developから分岐し、developにマージする。 プロダクトリリースの準備用。 リリース予定の機能やバグフィックスが反映された状態のdevelopから分岐 する。 Gitコマンドの理解(ブランチ戦略、プルリクエスト)
  40. 40. 40 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation ブランチ戦略(樹形図) master(main) develop feature release hotfix Tag Ver0.1 Tag Ver1.0 Tag Ver2.0 Tag Ver2.1 Gitコマンドの理解(ブランチ戦略、プルリクエスト)
  41. 41. 41 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation プルリクエスト コードなどを追加・修正した際、ブランチへの反映を他の開発者に依頼する機能 プルリクエスト マージ レビュー担当 Gitコマンドの理解(ブランチ戦略、プルリクエスト)
  42. 42. 42 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation Gitコマンドの理解(ブランチ戦略、プルリクエスト) デモ
  43. 43. 43 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation インデックス ワークツリー ローカル リポジトリ リモート リポジトリ デモ(既存PJのリポジトリpullして、ファイル修正) Github ➀プル ➁ファイル修正 ➂状態確認 ➃ インデックス に追加 ⑤ コミット ⑥ プッシュ ⑦プルリクエスト ⑧プルリクエスト承認 (マージ) Gitコマンドの理解(ブランチ戦略、プルリクエスト)
  44. 44. Tech Dojo いまからでも遅くない! Git超入門(ハンズオン編) こうご期待!! IBM Developer 次回予告!!
  45. 45. Tech Dojo いまからでも遅くない! Git超入門(ハンズオン編) こうご期待!! IBM Developer
  46. 46. 46 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation まとめ 1 .バージョン管理システムとは 2 .Git、GitHubとは 3 .Git全体とコマンドの対応 4 .Gitコマンドの理解(コミット、initなど) 5 .Gitコマンドの理解(ブランチ、マージ、コンフリクト) 6 .Gitコマンドの理解(プッシュ、クローン、フェッチ、プル) 7 .Gitコマンドの理解(ブランチ戦略、プルリクエスト) Git公式ドキュメントはぜひご覧ください! https://git-scm.com/book/ja/v2
  47. 47. 47 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation いろいろTry&Errorしながら 試してみてください。 ありがとうございました
  48. 48. 48 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation
  49. 49. 49 Customer Success, IBM Technology, Japan / © 2022 IBM Corporation QA タイム

×