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

いまからでも遅くない!Git超入門(ハンズオン編)

 いまからでも遅くない!Git超入門(ハンズオン編)

taketomsho

June 20, 2023
Tweet

More Decks by taketomsho

Other Decks in Technology

Transcript

  1. 2 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation 免責事項 本資料に含まれる情報は可能な限り正確を期しておりますが、 記載された内容に関して、日本アイ・ビー・エム株式会社が 何ら保証するものではありません。 従って、本資料の情報の利用は使用者の責任において 為されるものであり、資料の内容によって受けた 如何なる被害に関しても一切の補償をするものではありません。
  2. 3 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation 今回のゴール Gitの基本的な操作がわかる
  3. 4 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation 前提条件 ➀基本的なWindows/Linuxコマンドの理解 (cd、dir、mkdir等) ➁2023年5月開催の「Git超入門 座学編」の理解
  4. 5 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation dir ・・・ディレクトリの中身を表示する cd ・・・任意のディレクトリに移動する mkdir(md) ・・・ディレクトリを作成する del ・・・ファイルを削除する rmdir(rd) ・・・ディレクトリを削除する notepad(vimなど)・・・ファイルを編集する ➀基本的なWindowsコマンド 前提条件
  5. 6 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation ls ・・・ディレクトリの中身を表示する cd ・・・任意のディレクトリに移動する mkdir ・・・ディレクトリを作成する rm ・・・ファイルを削除する rm –r ・・・ディレクトリを削除する vim ・・・ファイルを編集する ➀基本的なLinuxコマンド 前提条件
  6. 7 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation URL: https://speakerdeck.com/yokokohno/imakarademochi- kunai-gitchao-ru-men-zuo-xue-bian-rerun ➁2023年5月開催の「Git超入門 座学編」の理解 前提条件
  7. 8 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation 本日のアジェンダ 1 .(おさらい)バージョン管理システムとは 2 . (おさらい) Git全体像 3 .Gitコマンドの理解(コミット、initなど) 4 .Gitコマンドの理解(ブランチ、マージ、コンフリクト) 5 .Gitコマンドの理解(プッシュ、クローン、フェッチ、プル) 6 .Gitコマンドの理解(プルリクエスト、ブランチ戦略)、デモ 7 .QAタイム
  8. 9 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation バージョン管理システムとは ファイルに対して 「いつ」 「誰が」「何を変更したか」 というような情報を記録することで、 過去のある時点の状態を「復元」したり 変更内容の「差分」を表示できるように 「バージョン」を付けて管理するシステム
  9. 10 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation 本日のアジェンダ 1 .(おさらい)バージョン管理システムとは 2 . (おさらい) Git全体像 3 .Gitコマンドの理解(コミット、initなど) 4 .Gitコマンドの理解(ブランチ、マージ、コンフリクト) 5 .Gitコマンドの理解(プッシュ、クローン、フェッチ、プル) 6 .Gitコマンドの理解(プルリクエスト、ブランチ戦略)、デモ 7 .QAタイム
  10. 11 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation リモート リポジトリ 変更 ローカル リポジトリ ローカル リポジトリ 取得 Githubなど Gitなどの分散型バージョン管理システム 反映 Git全体像
  11. 12 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation push commit add インデックス ワークツリー ローカル リポジトリ リモート リポジトリ Gitワークフローと基本的なコマンドとの対応 init clone ローカルリポジトリ作成 status branch merge checkout pull/fetch Githubなど Git全体像
  12. 13 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation 本日のアジェンダ 1 .(おさらい)バージョン管理システムとは 2 . (おさらい) Git全体像 3 .Gitコマンドの理解(コミット、initなど) 4 .Gitコマンドの理解(ブランチ、マージ、コンフリクト) 5 .Gitコマンドの理解(プッシュ、クローン、フェッチ、プル) 6 .Gitコマンドの理解(プルリクエスト、ブランチ戦略)、デモ 7 .QAタイム
  13. 14 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation push commit add インデックス ワークツリー ローカル リポジトリ リモート リポジトリ Gitワークフローと基本的なコマンドとの対応 init clone ローカルリポジトリ作成 status branch merge checkout pull/fetch Githubなど Gitコマンドの理解(コミット、initなど)
  14. 15 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation init、 add、status、commit init ・・・ ローカルリポジトリを作成する add ・・・ ファイルをインデックスに追加する status ・・・ ワークツリーの状況を表示する commit ・・・ インデックスにあるファイルを ローカルリポジトリに追加する Gitコマンドの理解(コミット、initなど)
  15. 16 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation デモ(みんなで作業) Gitコマンドの理解(コミット、initなど)
  16. 17 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation ローカルリポジトリへcommit $ mkdir samplepj $ cd samplepj $ git init $ vi Readme.txt $ git status $ git add –A $ git status $ git commit -m "my first commit" Gitコマンドの理解(コミット、initなど)
  17. 18 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation 本日のアジェンダ 1 .(おさらい)バージョン管理システムとは 2 . (おさらい) Git全体像 3 .Gitコマンドの理解(コミット、initなど) 4 .Gitコマンドの理解(ブランチ、マージ、コンフリクト) 5 .Gitコマンドの理解(プッシュ、クローン、フェッチ、プル) 6 .Gitコマンドの理解(プルリクエスト、ブランチ戦略)、デモ 7 .QAタイム
  18. 19 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation push commit add インデックス ワークツリー ローカル リポジトリ リモート リポジトリ Gitワークフローと基本的なコマンドとの対応 init clone ローカルリポジトリ作成 status branch merge checkout pull/fetch Githubなど Gitコマンドの理解(ブランチ、マージ、コンフリクト)
  19. 20 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation ブランチ 「分岐」して記録するための仕組み A B C H Z リリース 履歴 バグ 履歴 機能追加 履歴 Gitコマンドの理解(ブランチ、マージ、コンフリクト)
  20. 21 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation マージ 作業中のブランチに、別のブランチの内容を取り込むこと(統合すること) C H D J Index.html Index.html Index.html Gitコマンドの理解(ブランチ、マージ、コンフリクト)
  21. 22 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation コンフリクト 複数人が同じ箇所を変更してマージしようとした時、どの記述を優先したらいいか分から ない状態 B C H D J コンフリクト Gitコマンドの理解(ブランチ、マージ、コンフリクト)
  22. 23 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation branch、merge、checkout branch ・・・ ブランチを作成する/確認する merge ・・・ ブランチを統合する checkout ・・・ 作業ブランチを切り替える Gitコマンドの理解(ブランチ、マージ、コンフリクト)
  23. 24 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation デモ(みんなで作業) ブランチ作ってマージ Gitコマンドの理解(ブランチ、マージ、コンフリクト)
  24. 25 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation ブランチ作ってマージ 1/2 $ git branch // 状況確認 $ git branch develop $ notepad master.txt // あとで動作するので作成しておく $ git add –A $ git commit –m “master.txt commit” Gitコマンドの理解(ブランチ、マージ、コンフリクト)
  25. 26 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation ブランチ作ってマージ 2/2 $ git branch // 状況確認 $ git checkout develop $ dir // master.txtがいないことを確認 $ notepad develop.txt $ git add -A $ git commit –m “develop.txt commit” $ git checkout master $ dir // develop.txtがいないことを確認 $ git merge develop // マージ $ dir // master.txt、develop.txt確認 Gitコマンドの理解(ブランチ、マージ、コンフリクト)
  26. 27 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation デモ(みんなで作業) ブランチ作ってコンフリクト Gitコマンドの理解(ブランチ、マージ、コンフリクト)
  27. 28 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation コンフリクト(複雑なので図解) master (main) develop1 Sample.txtの2行目に「ブルーベリー」を追加 develop2 Sample.txtの2行目に「メロン」を追加 マージ マージ コンフリクト Sample.txt 1行目に「テスト」 作成 Gitコマンドの理解(ブランチ、マージ、コンフリクト)
  28. 29 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation ブランチ作ってコンフリクト $ git branch // masterブランチ確認 $ notepad Sample.txt // 「テスト」追記 $ git add –A $ git commit –m “conflict test” $ git branch develop1 $ git branch develop2 $ git checkout develop1 $ notepad Sample.txt // 2行目「メロン」追記 Gitコマンドの理解(ブランチ、マージ、コンフリクト)
  29. 30 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation ブランチ作ってコンフリクト(続き) $ git add -A $ git commit –m “melon add” $ git checkout master $ git merge develop1 $ git checkout develop2 $ notepad Sample.txt // 2行目「ブルーベリー」追記 $ git add -A $ git commit –m “blueberry add” Gitコマンドの理解(ブランチ、マージ、コンフリクト)
  30. 31 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation ブランチ作ってコンフリクト(続き) $ git checkout master $ git merge develop2 Auto-merging Sample.txt CONFLICT (content): Merge conflict in Sample.txt Automatic merge failed; fix conflicts and then commit the result. ★★ここでコンフリクト発生★★ ↓コンフリクトの内容を確認する↓ $ notepad Sameple.txt Gitコマンドの理解(ブランチ、マージ、コンフリクト)
  31. 32 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation ブランチ作ってコンフリクト(続き) こんな感じになっているはず・・・ ----------------------------------- テスト <<<<<<< HEAD メロン ======= ブルーベリー >>>>>>> develop2 Masterブランチの内容 develop2ブランチの内容 Gitコマンドの理解(ブランチ、マージ、コンフリクト)
  32. 33 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation コンフリクト(複雑なので図解) master (main) develop1 Sample.txtの2行目に「ブルーベリー」を追加 develop2 Sample.txtの2行目に「メロン」を追加 マージ マージ コンフリクト Sample.txt 1行目に「テスト」 作成 Gitコマンドの理解(ブランチ、マージ、コンフリクト)
  33. 34 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation ブランチ作ってコンフリクト(続き) 今回はdevelop2の内容が正しいという方向で修正する ----------------------------------- テスト ブルーベリー develop2ブランチの内容に修正 Gitコマンドの理解(ブランチ、マージ、コンフリクト)
  34. 35 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation ブランチ作ってコンフリクト(続き) インデックスにはまだマージ前のファイルが記録されているため 競合を解消したファイルをgit add コマンドで 再度インデックスに追加する必要があります。 そのままコミットでOK。 $ git add Sample.txt $ git commit –m “conflict complete” Gitコマンドの理解(ブランチ、マージ、コンフリクト)
  35. 36 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation 本日のアジェンダ 1 .(おさらい)バージョン管理システムとは 2 . (おさらい) Git全体像 3 .Gitコマンドの理解(コミット、initなど) 4 .Gitコマンドの理解(ブランチ、マージ、コンフリクト) 5 .Gitコマンドの理解(プッシュ、クローン、フェッチ、プル) 6 .Gitコマンドの理解(プルリクエスト、ブランチ戦略)、デモ 7 .QAタイム
  36. 37 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation push commit add インデックス ワークツリー ローカル リポジトリ リモート リポジトリ Gitワークフローと基本的なコマンドとの対応 init clone ローカルリポジトリ作成 status branch merge checkout pull/fetch Githubなど Gitコマンドの理解(プッシュ、クローン、フェッチ、プル)
  37. 38 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation プッシュ ローカルリポジトリにある対象データを、リモートリポジトリにアップロードすること push ローカル リポジトリ リモート リポジトリ Githubなど Gitコマンドの理解(プッシュ、クローン、フェッチ、プル)
  38. 39 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation クローン リモートリポジトリにある情報を、ローカルリポジトリにまるごとコピーすること (同時にローカルリポジトリも作成) clone ローカル リポジトリ リモート リポジトリ Githubなど Gitコマンドの理解(プッシュ、クローン、フェッチ、プル)
  39. 40 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation フェッチ リモートリポジトリ から最新の更新情報を取得して、ローカルリポジトリを最新化すること fetch ローカル リポジトリ リモート リポジトリ Githubなど Gitコマンドの理解(プッシュ、クローン、フェッチ、プル)
  40. 41 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation プル リモートリポジトリ から最新の更新情報を取得して、ローカルリポジトリを最新化して、 手元のソースとマージすること(fetch+merge) pull ローカル リポジトリ リモート リポジトリ Githubなど Gitコマンドの理解(プッシュ、クローン、フェッチ、プル)
  41. 42 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation デモ(みんなで作業) Gitコマンドの理解(プッシュ、クローン、フェッチ、プル)
  42. 43 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation 最新をプルして、ファイル追加してプッシュ $ cd .. // samplepjフォルダの1階層上に移動 $ git clone https://github.com/(アカウント名)/git-tutorial $ cd git-tutorial $ echo "# git-tutorial" >> README.md $ git init $ git add README.md $ git commit -m "first commit" $ git branch -M main $ git push -u origin main GitHubとのやりとり(プッシュ、クローン、フェッチ、プル)
  43. 44 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation 最新をプルして、ファイル追加してプッシュ (※補足1)git push時に以下のようなエラー →git pull origin masterしてください! error: failed to push some refs to 'https://github.com/NoriMuraZ/git-tutorial' hint: Updates were rejected because the remote contains work that you do hint: not have locally. This is usually caused by another repository pushing hint: to the same ref. You may want to first integrate the remote changes hint: (e.g., 'git pull ...') before pushing again. hint: See the 'Note about fast-forwards' in 'git push --help' for details. GitHubとのやりとり(プッシュ、クローン、フェッチ、プル)
  44. 45 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation 最新をプルして、ファイル追加してプッシュ $ git push origin master Username for ‘https://github.com’: (GitHubアカウント名) Password for ‘https://[email protected]’: (メモったトークン) (※補足2)git push時に以下のようなエラー →「Git超入門_ハンズオン準備.pdf」でメモったトークンを使って 認証してください! GitHubとのやりとり(プッシュ、クローン、フェッチ、プル)
  45. 46 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation 最新をプルして、ファイル追加してプッシュ GitHubとのやりとり(プッシュ、クローン、フェッチ、プル) 「いいえ」をクリックして、警告を飛ばしてください (複数回出る場合もあり) (※補足3)git push時に以下のようなエラー(Windowsの方)
  46. 47 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation 本日のアジェンダ 1 .(おさらい)バージョン管理システムとは 2 . (おさらい) Git全体像 3 .Gitコマンドの理解(コミット、initなど) 4 .Gitコマンドの理解(ブランチ、マージ、コンフリクト) 5 .Gitコマンドの理解(プッシュ、クローン、フェッチ、プル) 6 .Gitコマンドの理解(プルリクエスト、ブランチ戦略)、デモ 7 .QAタイム
  47. 48 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation ブランチ戦略 ここでは一般的には「git-flow」と呼ばれるものを説明する(考え方) 以下のブランチで構成する。 master(main) develop feature release hotfix プロダクトとしてリリースする用のブランチ。リリースしたらタグ付けする。 リリース後の緊急対応(クリティカルなバグフィックスなど)用。 開発用ブランチ。コードが安定し、リリース準備ができたらreleaseへマージ する。 機能の追加用。developから分岐し、developにマージする。 プロダクトリリースの準備用。 リリース予定の機能やバグフィックスが反映された状態のdevelopから分岐 する。 Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  48. 49 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation ブランチ戦略(樹形図) 例えば・・・ master(main) develop feature release hotfix Tag Ver0.1 Tag Ver1.0 Tag Ver2.0 Tag Ver2.1 Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  49. 50 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation デモ(みんなで作業) Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  50. 51 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation ブランチ戦略(vscodeでブランチを可視化) 以下の状態を作って、vscodeで確認してみる master(main) develop Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  51. 52 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation ブランチ作ってマージ $ cd git-tutorial // git-tutorialに移動 $ git branch // 状況確認 $ git checkout –b develop // develop作成しつつ移動 $ notepad develop.txt $ git add -A $ git commit –m “develop create” ここでvscodeを開きましょう Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  52. 53 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation ブランチ作ってマージ ここでvscodeを開きましょう。 右クリックして「その他のオプションを表示」⇒「Codeで開く」を選択 Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ) 「Codeで開く」ボタン クリック
  53. 54 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation ブランチ作ってマージ(GitGraphで確認) Vscode左下 「Git Graph」ボタン 押す Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ) ブランチの状態が わかる
  54. 55 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation ブランチ作ってマージ (続き) $ git checkout master $ git merge develop ここでまたvscodeを開きましょう Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  55. 56 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation ブランチ作ってマージ(GitGraphで確認) Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ) 結合!
  56. 57 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation プルリクエスト コードなどを追加・修正した際、ブランチへの反映を他の開発者に依頼する機能 プルリクエスト マージ レビュー担当 Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  57. 58 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation プルリクエストしてみる 以下のファイルの状態にしてプルリクエストを作ってみる プルリクエスト マージ レビュー担当 ➀新しいソースファイル を追加します ➁プルリクエスト を作成します ➂マージします Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  58. 59 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation デモ プルリクエスト作成 ↓ プルリクエスト確認作業 Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  59. 60 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation プルリクエストしてみる(準備編) これまでコマンドベース(CUI)で やってきたことを vscode(GUI)上でやってみます。 Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  60. 61 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation プルリクエストしてみる(準備編) 【注意】 git-tutorialフォルダを一度削除してください Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  61. 62 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation プルリクエストしてみる(準備編) (1/21)vscodeを起動後、 ボタン→「リポジトリの複製」ボタン押して以下URLを貼り付ける https://github.com/(ユーザー名)/git-tutorial URL貼り付けして Enterキー押す Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  62. 63 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation (2/21)ソース保存先を決めて「リポジトリの場所を選択」ボタンを押して vscode右下に表示される「ワークスペースに追加」ボタンを押す ソースを保存する フォルダを作成 プルリクエストしてみる(準備編) Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  63. 64 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation (3/21)以下画面の表示になったら準備OKです プルリクエストしてみる(準備編) Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  64. 65 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation (4/21)作業ブランチを「master」(またはmain)ボタンを押して、developブランチに切り替える プルリクエストしてみる(ソース修正編) この表示になれば OK Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  65. 66 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation (4/21)作業ブランチを「master」(またはmain)ボタンを押して、developブランチに切り替える プルリクエストしてみる(ソース修正編) Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  66. 67 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation (5/21) ボタンを押して、ファイルを作成する(ここでは自分の名前のファイルを作成) プルリクエストしてみる(ソース修正編) この表示になれば OK Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  67. 68 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation (6/21)ソースファイルを編集して、上書き保存する(Ctrl+S) プルリクエストしてみる(ソース修正編) Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  68. 69 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation (7/21)差分表示を確認する プルリクエストしてみる(ソース修正編) Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  69. 70 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation (8/21)インデックスに上げて、コミットメッセージを入力、コミットしてプッシュする プルリクエストしてみる(ソース修正編) 1. インデックス に上げる 2. インデックス に上がっている のを確認 3. コミット メッセージを 入力 4. コミット 5. プッシュ Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ) 5. プッシュ
  70. 71 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation (9/21)git fetchしておく プルリクエストしてみる(ソース修正編) クリック クリック またはこちら↓ Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  71. 72 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation (10/21) Gitの状態をGitGraphで確認する プルリクエストしてみる(ソース修正編) Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ) 入力したコミットメッセージが表示
  72. 73 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation (11/21)以下GitHubのURLにアクセスして、プルリクエストを作成する https://github.com/(ユーザ名)/git-tutorial/pulls プルリクエストしてみる(プルリクエスト作成編) Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  73. 74 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation (12/21) 「New pull request」ボタンを押して、「compare:develop」を選択 プルリクエストしてみる(プルリクエスト作成編) Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  74. 75 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation (13/21)以下表示になったら「Create pull request」を押す プルリクエストしてみる(プルリクエスト作成編) ・コミットメッセージ ・差分ファイル の情報を確認する クリック Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  75. 76 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation (14/21)以下表示になったら「Create pull request」を押す プルリクエストしてみる(プルリクエスト作成編) Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ) プルリクエストの内容を説明する文を入力する (ソースコードの改修内容や動作確認方法など) 【ポイント】 プルリクエストを見てもらう人に 今回の修正内容をわかりやすく説明すること
  76. 77 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation (15/21)以下表示になればプルリクエスト作成完了です プルリクエストしてみる(プルリクエスト作成編) Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  77. 78 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation (16/21)先ほどの画面のURLをチャットなどで知らせて依頼完了(プルリクエスト依頼) プルリクエストしてみる(プルリクエスト依頼編) https://github.com/taketomsho/git-tutorial/pull/1 taketomsho taketomsho Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  78. 79 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation (17/21) (プルリクエスト依頼された側)知らされたURLにアクセスする プルリクエストしてみる(プルリクエストマージ編) https://github.com/taketomsho/git-tutorial/pull/1 taketomsho taketomsho Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  79. 80 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation (18/21)(プルリクエスト依頼された側)内容を確認し 「Merge pull request」ボタン→「Confirm merge」ボタンを押す プルリクエストしてみる(プルリクエストマージ編) Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  80. 81 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation (19/21) (プルリクエスト依頼された側)以下内容になればマージOK プルリクエストしてみる(プルリクエストマージ編) Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  81. 82 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation (20/21) Git GraphでGitHubの状態を確認する。「Fetch」ボタンを押す。 プルリクエストしてみる(プルリクエストマージ編) Fetchボタンを押す Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  82. 83 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation (21/21)マージ(統合)されたことがわかる。 プルリクエストしてみる(プルリクエストマージ編) Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
  83. 84 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation インデックス ワークツリー ローカル リポジトリ リモート リポジトリ 例題(既存PJのリポジトリpullして、ファイル修正) Github ➀クローン ➂ファイル作成 ➁フォルダ移動、状態確認、ブランチ切り替え ➃ インデックス に追加 ⑤ コミット ⑥ プッシュ ⑦プルリクエスト ⑧プルリクエスト承認 (マージ) Gitコマンドの理解(ブランチ戦略、プルリクエスト)
  84. 85 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation ➀ $ git clone https://github.com/・・・ ➁ $ cd (フォルダ名) & git branch ➁ $ git checkout –b develop // なければ作成 ➂ $ notepad develop.txt ➃ $ git add -A ⑤ $ git commit –m “ソースファイルを作成した(develop)” ⑥ $ git push origin develop // 認証 ⑦ プルリクエスト作成 ⑧ プルリクエスト承認(マージ) Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ) 回答
  85. 86 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation 1 .(おさらい)バージョン管理システムとは 2 . (おさらい) Git全体像 3 .Gitコマンドの理解(コミット、initなど) 4 .Gitコマンドの理解(ブランチ、マージ、コンフリクト) 5 .Gitコマンドの理解(プッシュ、クローン、フェッチ、プル) 6 .Gitコマンドの理解(プルリクエスト、ブランチ戦略)、デモ 7 .QAタイム 本日のアジェンダ
  86. 88 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation まとめ 1 .(おさらい)バージョン管理システムとは 2 .(おさらい) Git全体像 3 .Gitコマンドの理解(コミット、initなど) 4 .Gitコマンドの理解(ブランチ、マージ、コンフリクト) 5 .Gitコマンドの理解(プッシュ、クローン、フェッチ、プル) 6 .Gitコマンドの理解(プルリクエスト、ブランチ戦略)、デモ Gitの概要が把握できたら公式ドキュメントを見ることを オススメします! https://git-scm.com/book/ja/v2
  87. 89 Customer Success, IBM Technology, Japan / © 2023 IBM

    Corporation いろいろTry&Errorしながら 試してみてください。 ありがとうございました