Weitere ähnliche Inhalte
Ähnlich wie Git超入門(ハンズオン).pdf (20)
Kürzlich hochgeladen (10)
Git超入門(ハンズオン).pdf
- 2. 2
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
自己紹介
村田 憲昭
北海道北斗市
スノーボード、登山、グルメ、猫
カスタマーサクセス
DX人材育成/教育(IT全般)
スクラムマスター
半導体アプリエンジニア
某コンビニのエンジニア
名前
生息地
趣味
経歴
- 3. 3
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
免責事項
本資料に含まれる情報は可能な限り正確を期しておりますが、
記載された内容に関して、日本アイ・ビー・エム株式会社が
何ら保証するものではありません。
従って、本資料の情報の利用は使用者の責任において
為されるものであり、資料の内容によって受けた
如何なる被害に関しても一切の補償をするものではありません。
- 5. 5
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
前提条件
➀基本的なWindows/Linuxコマンドの理解
(cd、dir、mkdir等)
➁2022年12月開催の「Git超入門 座学編」の理解
- 6. 6
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
dir ・・・ディレクトリの中身を表示する
cd ・・・任意のディレクトリに移動する
mkdir(md) ・・・ディレクトリを作成する
del ・・・ファイルを削除する
rmdir(rd) ・・・ディレクトリを削除する
notepad(vimなど)・・・ファイルを編集する
➀基本的なWindowsコマンド
前提条件
- 7. 7
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
ls ・・・ディレクトリの中身を表示する
cd ・・・任意のディレクトリに移動する
mkdir ・・・ディレクトリを作成する
rm ・・・ファイルを削除する
rm –r ・・・ディレクトリを削除する
vim ・・・ファイルを編集する
➀基本的なLinuxコマンド
前提条件
- 8. 8
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
https://www.slideshare.net/nmzstation/gitpdf-254864927
➁2022年12月開催の「Git超入門 座学編」の理解
前提条件
- 9. 9
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
本日のアジェンダ
1 .(おさらい)バージョン管理システムとは
2 . (おさらい) Git全体像
3 .Gitコマンドの理解(コミット、initなど)
4 .Gitコマンドの理解(ブランチ、マージ、コンフリクト)
5 .Gitコマンドの理解(プッシュ、クローン、フェッチ、プル)
6 .Gitコマンドの理解(プルリクエスト、ブランチ戦略)、デモ
7 .QAタイム
- 10. 10
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
バージョン管理システムとは
ファイルに対して
「いつ」 「誰が」「何を変更したか」
というような情報を記録することで、
過去のある時点の状態を「復元」したり
変更内容の「差分」を表示できるように
「バージョン」を付けて管理するシステム
- 11. 11
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
本日のアジェンダ
1 .(おさらい)バージョン管理システムとは
2 . (おさらい) Git全体像
3 .Gitコマンドの理解(コミット、initなど)
4 .Gitコマンドの理解(ブランチ、マージ、コンフリクト)
5 .Gitコマンドの理解(プッシュ、クローン、フェッチ、プル)
6 .Gitコマンドの理解(プルリクエスト、ブランチ戦略)、デモ
7 .QAタイム
- 12. 12
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
リモート
リポジトリ
変更
ローカル
リポジトリ
ローカル
リポジトリ
取得
Githubなど
Gitなどの分散型バージョン管理システム
反映
Git全体像
- 13. 13
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
push
commit
add インデックス
ワークツリー
ローカル
リポジトリ
リモート
リポジトリ
Gitワークフローと基本的なコマンドとの対応
init
clone
ローカルリポジトリ作成
status
branch
merge
checkout
pull/fetch
Githubなど
Git全体像
- 14. 14
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
本日のアジェンダ
1 .(おさらい)バージョン管理システムとは
2 . (おさらい) Git全体像
3 .Gitコマンドの理解(コミット、initなど)
4 .Gitコマンドの理解(ブランチ、マージ、コンフリクト)
5 .Gitコマンドの理解(プッシュ、クローン、フェッチ、プル)
6 .Gitコマンドの理解(プルリクエスト、ブランチ戦略)、デモ
7 .QAタイム
- 15. 15
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
push
commit
add インデックス
ワークツリー
ローカル
リポジトリ
リモート
リポジトリ
Gitワークフローと基本的なコマンドとの対応
init
clone
ローカルリポジトリ作成
status
branch
merge
checkout
pull/fetch
Githubなど
Gitコマンドの理解(コミット、initなど)
- 16. 16
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
init、 add、status、commit
init ・・・ ローカルリポジトリを作成する
add ・・・ ファイルをインデックスに追加する
status ・・・ ワークツリーの状況を表示する
commit ・・・ インデックスにあるファイルを
ローカルリポジトリに追加する
Gitコマンドの理解(コミット、initなど)
- 18. 18
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
ローカルリポジトリへcommit
$ mkdir samplepj
$ cd samplepj
$ git init
$ notepad Readme.txt
$ git status
$ git add –A
$ git status
$ git commit -m "my first commit"
Gitコマンドの理解(コミット、initなど)
- 19. 19
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
本日のアジェンダ
1 .(おさらい)バージョン管理システムとは
2 . (おさらい) Git全体像
3 .Gitコマンドの理解(コミット、initなど)
4 .Gitコマンドの理解(ブランチ、マージ、コンフリクト)
5 .Gitコマンドの理解(プッシュ、クローン、フェッチ、プル)
6 .Gitコマンドの理解(プルリクエスト、ブランチ戦略)、デモ
7 .QAタイム
- 20. 20
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
push
commit
add インデックス
ワークツリー
ローカル
リポジトリ
リモート
リポジトリ
Gitワークフローと基本的なコマンドとの対応
init
clone
ローカルリポジトリ作成
status
branch
merge
checkout
pull/fetch
Githubなど
Gitコマンドの理解(ブランチ、マージ、コンフリクト)
- 21. 21
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
ブランチ
A B C
H
Z
リリース
履歴
バグ
履歴
機能追加
履歴
Gitコマンドの理解(ブランチ、マージ、コンフリクト)
- 22. 22
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
マージ
C
H
D
J
Index.html
Index.html
Index.html
Gitコマンドの理解(ブランチ、マージ、コンフリクト)
- 23. 23
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
コンフリクト
B C
H
D
J
コンフリクト
Gitコマンドの理解(ブランチ、マージ、コンフリクト)
- 24. 24
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
branch、merge、checkout
branch ・・・ ブランチを作成する/確認する
merge ・・・ ブランチを統合する
checkout ・・・ 作業ブランチを切り替える
Gitコマンドの理解(ブランチ、マージ、コンフリクト)
- 25. 25
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
デモ(みんなで作業)
ブランチ作ってマージ
Gitコマンドの理解(ブランチ、マージ、コンフリクト)
- 26. 26
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コマンドの理解(ブランチ、マージ、コンフリクト)
- 27. 27
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コマンドの理解(ブランチ、マージ、コンフリクト)
- 28. 28
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
デモ(みんなで作業)
ブランチ作ってコンフリクト
Gitコマンドの理解(ブランチ、マージ、コンフリクト)
- 29. 29
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
コンフリクト(複雑なので図解)
master
(main)
develop1
Sample.txtの2行目に「ブルーベリー」を追加
develop2
Sample.txtの2行目に「メロン」を追加
マージ マージ
コンフリクト
Sample.txt
1行目に「テスト」
作成
Gitコマンドの理解(ブランチ、マージ、コンフリクト)
- 30. 30
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コマンドの理解(ブランチ、マージ、コンフリクト)
- 31. 31
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コマンドの理解(ブランチ、マージ、コンフリクト)
- 32. 32
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コマンドの理解(ブランチ、マージ、コンフリクト)
- 33. 33
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
ブランチ作ってコンフリクト(続き)
こんな感じになっているはず・・・
-----------------------------------
テスト
<<<<<<< HEAD
メロン
=======
ブルーベリー
>>>>>>> develop2
Masterブランチの内容
develop2ブランチの内容
Gitコマンドの理解(ブランチ、マージ、コンフリクト)
- 34. 34
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
コンフリクト(複雑なので図解)
master
(main)
develop1
Sample.txtの2行目に「ブルーベリー」を追加
develop2
Sample.txtの2行目に「メロン」を追加
マージ マージ
コンフリクト
Sample.txt
1行目に「テスト」
作成
Gitコマンドの理解(ブランチ、マージ、コンフリクト)
- 35. 35
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
ブランチ作ってコンフリクト(続き)
今回はdevelop2の内容が正しいという方向で修正する
-----------------------------------
テスト
ブルーベリー
develop2ブランチの内容に修正
Gitコマンドの理解(ブランチ、マージ、コンフリクト)
- 36. 36
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
ブランチ作ってコンフリクト(続き)
インデックスにはまだマージ前のファイルが記録されているため
競合を解消したファイルをgit add コマンドで
再度インデックスに追加する必要があります。
そのままコミットでOK。
$ git add Sample.txt
$ git commit –m “conflict complete”
Gitコマンドの理解(ブランチ、マージ、コンフリクト)
- 37. 37
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
本日のアジェンダ
1 .(おさらい)バージョン管理システムとは
2 . (おさらい) Git全体像
3 .Gitコマンドの理解(コミット、initなど)
4 .Gitコマンドの理解(ブランチ、マージ、コンフリクト)
5 .Gitコマンドの理解(プッシュ、クローン、フェッチ、プル)
6 .Gitコマンドの理解(プルリクエスト、ブランチ戦略)、デモ
7 .QAタイム
- 38. 38
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
push
commit
add インデックス
ワークツリー
ローカル
リポジトリ
リモート
リポジトリ
Gitワークフローと基本的なコマンドとの対応
init
clone
ローカルリポジトリ作成
status
branch
merge
checkout
pull/fetch
Githubなど
Gitコマンドの理解(プッシュ、クローン、フェッチ、プル)
- 39. 39
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
プッシュ
ローカルリポジトリにある対象データを、リモートリポジトリにアップロードすること
push
ローカル
リポジトリ
リモート
リポジトリ
Githubなど
Gitコマンドの理解(プッシュ、クローン、フェッチ、プル)
- 40. 40
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
クローン
リモートリポジトリにある情報を、ローカルリポジトリにまるごとコピーすること
(同時にローカルリポジトリも作成)
clone
ローカル
リポジトリ
リモート
リポジトリ
Githubなど
Gitコマンドの理解(プッシュ、クローン、フェッチ、プル)
- 41. 41
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
フェッチ
リモートリポジトリ から最新の更新情報を取得して、ローカルリポジトリを最新化すること
fetch
ローカル
リポジトリ
リモート
リポジトリ
Githubなど
Gitコマンドの理解(プッシュ、クローン、フェッチ、プル)
- 42. 42
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
プル
リモートリポジトリ から最新の更新情報を取得して、ローカルリポジトリを最新化して、
手元のソースとマージすること(fetch+merge)
pull
ローカル
リポジトリ
リモート
リポジトリ
Githubなど
Gitコマンドの理解(プッシュ、クローン、フェッチ、プル)
- 44. 44
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とのやりとり(プッシュ、クローン、フェッチ、プル)
- 45. 45
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とのやりとり(プッシュ、クローン、フェッチ、プル)
- 46. 46
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
最新をプルして、ファイル追加してプッシュ
$ git push origin master
Username for ‘https://github.com’: (GitHubアカウント名)
Password for ‘https://NoriMuraZ@github.com’: (メモったトークン)
(※補足2)git push時に以下のようなエラー
→「Git超入門_ハンズオン準備.pdf」でメモったトークンを使って
認証してください!
GitHubとのやりとり(プッシュ、クローン、フェッチ、プル)
- 47. 47
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
最新をプルして、ファイル追加してプッシュ
GitHubとのやりとり(プッシュ、クローン、フェッチ、プル)
「いいえ」をクリックして、警告を飛ばしてください
(複数回出る場合もあり)
(※補足3)git push時に以下のようなエラー(Windowsの方)
- 48. 48
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
本日のアジェンダ
1 .(おさらい)バージョン管理システムとは
2 . (おさらい) Git全体像
3 .Gitコマンドの理解(コミット、initなど)
4 .Gitコマンドの理解(ブランチ、マージ、コンフリクト)
5 .Gitコマンドの理解(プッシュ、クローン、フェッチ、プル)
6 .Gitコマンドの理解(プルリクエスト、ブランチ戦略)、デモ
7 .QAタイム
- 49. 49
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
ブランチ戦略
git-flow
master(main)
develop
feature
release
hotfix
プロダクトとしてリリースする用のブランチ。リリースしたらタグ付けする。
リリース後の緊急対応(クリティカルなバグフィックスなど)用。
開発用ブランチ。コードが安定し、リリース準備ができたらreleaseへマージ
する。
機能の追加用。developから分岐し、developにマージする。
プロダクトリリースの準備用。
リリース予定の機能やバグフィックスが反映された状態のdevelopから分岐
する。
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 50. 50
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コマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 52. 52
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
ブランチ戦略(vscodeでブランチを可視化)
以下の状態を作って、vscodeで確認してみる
master(main)
develop
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 53. 53
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コマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 54. 54
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
ブランチ作ってマージ
ここでvscodeを開きましょう。
右クリックして「その他のオプションを表示」⇒「Codeで開く」を選択
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
「Codeで開く」ボタン
クリック
- 55. 55
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
ブランチ作ってマージ(GitGraphで確認)
Vscode左下
「Git Graph」ボタン
押す
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
ブランチの状態が
わかる
- 56. 56
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
ブランチ作ってマージ
(続き)
$ git checkout master
$ git merge develop
ここでまたvscodeを開きましょう
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 57. 57
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
ブランチ作ってマージ(GitGraphで確認)
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
結合!
- 58. 58
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
プルリクエスト
コードなどを追加・修正した際、ブランチへの反映を他の開発者に依頼する機能
プルリクエスト マージ
レビュー担当
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 59. 59
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
プルリクエストしてみる
プルリクエスト マージ
レビュー担当
➀新しいソースファイル
を追加します
➁プルリクエスト
を作成します
➂マージします
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 60. 60
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
デモ
プルリクエスト作成
↓
プルリクエスト確認作業
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 61. 61
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
プルリクエストしてみる(準備編)
これまでコマンドベース(CUI)で
やってきたことを
vscode(GUI)上でやってみます。
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 62. 62
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
プルリクエストしてみる(準備編)
【注意】
git-tutorialフォルダを一度削除してください
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 63. 63
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
プルリクエストしてみる(準備編)
(1/21)vscodeを起動後、 ボタン→「リポジトリの複製」ボタン押して以下URLを貼り付ける
https://github.com/NoriMuraZ/git-tutorial
URL貼り付けして
Enterキー押す
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 64. 64
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
(2/21)ソース保存先を決めて「リポジトリの場所を選択」ボタンを押して
vscode右下に表示される「ワークスペースに追加」ボタンを押す
ソースを保存する
フォルダを作成
プルリクエストしてみる(準備編)
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 65. 65
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
(3/21)以下画面の表示になったら準備OKです
プルリクエストしてみる(準備編)
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 66. 66
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
(4/21)作業ブランチを「master」(またはmain)ボタンを押して、developブランチに切り替える
プルリクエストしてみる(ソース修正編)
この表示になれば
OK
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 67. 67
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
(4/21)作業ブランチを「master」(またはmain)ボタンを押して、developブランチに切り替える
プルリクエストしてみる(ソース修正編)
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 68. 68
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
(5/21) ボタンを押して、ファイルを作成する(ここでは自分の名前のファイルを作成)
プルリクエストしてみる(ソース修正編)
この表示になれば
OK
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 69. 69
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
(6/21)ソースファイルを編集して、上書き保存する(Ctrl+S)
プルリクエストしてみる(ソース修正編)
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 70. 70
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
(7/21)差分表示を確認する
プルリクエストしてみる(ソース修正編)
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 71. 71
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
(8/21)インデックスに上げて、コミットメッセージを入力、コミットしてプッシュする
プルリクエストしてみる(ソース修正編)
1. インデックス
に上げる
2. インデックス
に上がっている
のを確認
3. コミット
メッセージを
入力
4. コミット
5. プッシュ
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
5. プッシュ
- 72. 72
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
(9/21)git fetchしておく
プルリクエストしてみる(ソース修正編)
クリック
クリック
またはこちら↓
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 73. 73
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
(10/21) Gitの状態をGitGraphで確認する
プルリクエストしてみる(ソース修正編)
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
入力したコミットメッセージが表示
- 74. 74
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
(11/21)以下GitHubのURLにアクセスして、プルリクエストを作成する
https://github.com/(ユーザ名)/git-tutorial/pulls
プルリクエストしてみる(プルリクエスト作成編)
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 75. 75
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
(12/21) 「New pull request」ボタンを押して、「compare:develop」を選択
プルリクエストしてみる(プルリクエスト作成編)
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 76. 76
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
(13/21)以下表示になったら「Create pull request」を押す
プルリクエストしてみる(プルリクエスト作成編)
・コミットメッセージ
・差分ファイル
の情報を確認する
クリック
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 77. 77
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
(14/21)以下表示になったら「Create pull request」を押す
プルリクエストしてみる(プルリクエスト作成編)
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
プルリクエストの内容を説明する文を入力する
(ソースコードの改修内容や動作確認方法など)
【ポイント】
プルリクエストを見てもらう人に
今回の修正内容をわかりやすく説明すること
- 78. 78
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
(15/21)以下表示になればプルリクエスト作成完了です
プルリクエストしてみる(プルリクエスト作成編)
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 79. 79
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
(16/21)先ほどの画面のURLをチャットなどで知らせて依頼完了(プルリクエスト依頼)
プルリクエストしてみる(プルリクエスト依頼編)
https://github.com/NoriMuraZ/git-tutorial/pull/1
ibmmurat
a
ibmmurat
a
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 80. 80
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
(17/21) (プルリクエスト依頼された側)知らされたURLにアクセスする
プルリクエストしてみる(プルリクエストマージ編)
https://github.com/NoriMuraZ/git-tutorial/pull/1
ibmmurat
a
ibmmurat
a
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 81. 81
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
(18/21)(プルリクエスト依頼された側)内容を確認し
「Merge pull request」ボタン→「Confirm merge」ボタンを押す
プルリクエストしてみる(プルリクエストマージ編)
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 82. 82
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
(19/21) (プルリクエスト依頼された側)以下内容になればマージOK
プルリクエストしてみる(プルリクエストマージ編)
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 83. 83
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
(20/21) Git GraphでGitHubの状態を確認する。「Fetch」ボタンを押す。
プルリクエストしてみる(プルリクエストマージ編)
Fetchボタンを押す
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 84. 84
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
(21/21)マージ(統合)されたことがわかる。
プルリクエストしてみる(プルリクエストマージ編)
Gitコマンドの理解(ブランチ戦略、プルリクエスト、デモ)
- 85. 85
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
インデックス
ワークツリー
ローカル
リポジトリ
リモート
リポジトリ
例題(既存PJのリポジトリpullして、ファイル修正)
Github
➀クローン
➂ファイル作成
➁フォルダ移動、状態確認、ブランチ切り替え
➃
インデックス
に追加
⑤
コミット
⑥
プッシュ
⑦プルリクエスト
⑧プルリクエスト承認
(マージ)
Gitコマンドの理解(ブランチ戦略、プルリクエスト)
- 86. 86
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コマンドの理解(ブランチ戦略、プルリクエスト、デモ)
回答
- 87. 87
Customer Success, IBM Technology, Japan / © 2023 IBM Corporation
1 .(おさらい)バージョン管理システムとは
2 . (おさらい) Git全体像
3 .Gitコマンドの理解(コミット、initなど)
4 .Gitコマンドの理解(ブランチ、マージ、コンフリクト)
5 .Gitコマンドの理解(プッシュ、クローン、フェッチ、プル)
6 .Gitコマンドの理解(プルリクエスト、ブランチ戦略)、デモ
7 .QAタイム
本日のアジェンダ
- 89. 89
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