39
© CROOZ,Inc. 1 Git Extensions ワークショップ 技術統括本部 鈴木 優一

Git extensions ws外部公開用

Embed Size (px)

Citation preview

Page 1: Git extensions ws外部公開用

© CROOZ,Inc. 1

Git Extensions ワークショップ

技術統括本部

鈴木 優一

Page 2: Git extensions ws外部公開用

© CROOZ,Inc. 2

本日の内容 ・ Gitとは ~概要説明~ 約5分

・ Git Extensionsの使った作業フロー 約10分

・ 競合が発生した場合の対処方法 約5分

・ 実践WS 約20分

Page 3: Git extensions ws外部公開用

© CROOZ,Inc. 3

1.Gitとは ソースコードのバージョンを管理するソフトです

具体的には 変更履歴を記憶しています

メリットは ファイルを失っても復活できます

問題を引き起こす修正をいつ行われたかがわかる

複数名で開発していても出ぐれが発生しにくい

Page 4: Git extensions ws外部公開用

© CROOZ,Inc. 4

2.Git Extensionsを使った作業フロー

ローカルPC 共有リポジトリ

リモート

リポジトリ

ローカル

リポジトリ

①共有リポジトリを複製

初めて使う場合

ローカルPC 共有リポジトリ

リモート

リポジトリ

ローカル

リポジトリ

③ 差分の取得

次回以降

更新対象

各ファイル

更新 各ファイル

④ マージ

⑤ コミット

⑥ 差分の更新

② ブランチの作成

Git Extensionsを利用した場合

④から⑤または⑥の作業を一回の作業で行うことができます。

Page 5: Git extensions ws外部公開用

© CROOZ,Inc. 5

2.Git Extensionsを使った作業フロー よく使う言葉

リモートリポジトリ サーバ上に置いてあるソース置き場

ローカルリポジトリ 自分のパソコン上に置いてあるソース置き場

ブランチ ある時点のソースから分岐して開発を行うための領域

マージ 分岐したブランチ上のソースコードを一つにまとめること

クローン リモートリポジトリからローカルリポジトリへ複製すること

pull リモートリポジトリからローカルリポジトリへ差分を転送

すること

push ローカルリポジトリからリモートリポジトリへ差分を転送

すること

コミット 更新内容をリポジトリに登録すること

Page 6: Git extensions ws外部公開用

© CROOZ,Inc. 6

2.Git Extensionsを使った作業フロー まず、インストールしてください

手順はここを参照してください

Page 7: Git extensions ws外部公開用

© CROOZ,Inc. 7

2.Git Extensionsを使った作業フロー ① 共有リポジトリを複製

「リポジトリのclone」をクリック リポジトリURLを入力

ローカルのクローン先を入力

原則不要です

ブランチを指定

「個人リポジトリ」を指定

「クローン」をクリック

Page 8: Git extensions ws外部公開用

© CROOZ,Inc. 8

2.Git Extensionsを使った作業フロー ① 共有リポジトリを複製

「OK」をクリックし完了

Page 9: Git extensions ws外部公開用

© CROOZ,Inc. 9

2.Git Extensionsを使った作業フロー ② ブランチの作成

「リポジトリを開く」をクリック

開く対象のリポジトリを選択

「開く」をクリック

Page 10: Git extensions ws外部公開用

© CROOZ,Inc. 10

2.Git Extensionsを使った作業フロー ② ブランチの作成

「ブランチの作成」をクリック

Page 11: Git extensions ws外部公開用

© CROOZ,Inc. 11

2.Git Extensionsを使った作業フロー ② ブランチの作成

ブランチの作成起点をクリック

作成するブランチ名を入力

「作成を」をクリック

Page 12: Git extensions ws外部公開用

© CROOZ,Inc. 12

2.Git Extensionsを使った作業フロー ② ブランチの作成

「OK」をクリックし終了

Page 13: Git extensions ws外部公開用

© CROOZ,Inc. 13

2.Git Extensionsを使った作業フロー ③ 差分の取得

「リポジトリを開く」をクリック

開く対象のリポジトリを選択

「開く」をクリック

Page 14: Git extensions ws外部公開用

© CROOZ,Inc. 14

2.Git Extensionsを使った作業フロー ③ 差分の取得

「ブランチの切替」をクリック

Page 15: Git extensions ws外部公開用

© CROOZ,Inc. 15

2.Git Extensionsを使った作業フロー ③ 差分の取得

ブランチを選択

「切り替え」をクリック

Page 16: Git extensions ws外部公開用

© CROOZ,Inc. 16

2.Git Extensionsを使った作業フロー ③ 差分の取得

「OK」をクリック

Page 17: Git extensions ws外部公開用

© CROOZ,Inc. 17

2.Git Extensionsを使った作業フロー ③ 差分の取得

作成したブランチ名になっていることを確認

【参考】 変更前の画面の状態

Page 18: Git extensions ws外部公開用

© CROOZ,Inc. 18

2.Git Extensionsを使った作業フロー ③ 差分の取得

このアイコンをクリック

Page 19: Git extensions ws外部公開用

© CROOZ,Inc. 19

2.Git Extensionsを使った作業フロー ③ 差分の取得

このアイコンをクリック

「pull」をクリック

ここを選択

Page 20: Git extensions ws外部公開用

© CROOZ,Inc. 20

2.Git Extensionsを使った作業フロー ④ merge

「ブランチの切替」をクリック

Page 21: Git extensions ws外部公開用

© CROOZ,Inc. 21

2.Git Extensionsを使った作業フロー ④ merge

「master」ブランチを選択

「切り替え」をクリック

Page 22: Git extensions ws外部公開用

© CROOZ,Inc. 22

2.Git Extensionsを使った作業フロー ④ merge

「ブランチのマージ」をクリック

Page 23: Git extensions ws外部公開用

© CROOZ,Inc. 23

2.Git Extensionsを使った作業フロー ④ merge

マージ対象のブランチを選択

「マージ」をクリック

Page 24: Git extensions ws外部公開用

© CROOZ,Inc. 24

2.Git Extensionsを使った作業フロー ⑤ コミット

コミット対象があることを確認し、クリック

Page 25: Git extensions ws外部公開用

© CROOZ,Inc. 25

2.Git Extensionsを使った作業フロー ⑤ コミット

コミット対象を下エリアに移動

戻す場合は

上に移動

コミットのみ実施する場合はこのボタンをクリック

同時にpushする場合はボタンをクリック

Page 26: Git extensions ws外部公開用

© CROOZ,Inc. 26

2.Git Extensionsを使った作業フロー ⑤ コミット

「OK」をクリック

Page 27: Git extensions ws外部公開用

© CROOZ,Inc. 27

2.Git Extensionsを使った作業フロー ⑤ コミット

コミットされていることを確認

Page 28: Git extensions ws外部公開用

© CROOZ,Inc. 28

2.Git Extensionsを使った作業フロー ⑥ push

このアイコンをクリック

push先のリポジトリを入力

pushする元のブランチを入力

pushする先のブランチを入力

「Push」をクリックし実行

Page 29: Git extensions ws外部公開用

© CROOZ,Inc. 29

2.Git Extensionsを使った作業フロー ⑥ push

「OK」をクリック

Page 30: Git extensions ws外部公開用

© CROOZ,Inc. 30

3.競合が発生した時の対処方法 競合とは

複数のユーザが同じファイルを更新しようとしている状態のこと

発生の可能性が高い処理

・ローカルブランチにリポートブランチから pull する処理

・ローカルブランチ上でマージする処理

Page 31: Git extensions ws外部公開用

© CROOZ,Inc. 31

3.競合が発生した時の対処方法 競合が発生した場合、このような画面が出ます

Page 32: Git extensions ws外部公開用

© CROOZ,Inc. 32

対処手順 ローカルブランチ上でマージする処理

3.競合が発生した時の対処方法

「はい」をクリック

Page 33: Git extensions ws外部公開用

© CROOZ,Inc. 33

3.競合が発生した時の対処方法

①マージ対象を選択

②DIFFツールを選択

③「OK」をクリック

対処手順 ローカルブランチ上でマージする処理

Page 34: Git extensions ws外部公開用

© CROOZ,Inc. 34

3.競合が発生した時の対処方法

前のバージョン 今のバージョン リモートのバージョン

マージするバージョンを指定して保存

「はい」をクリック

対処手順 ローカルブランチ上でマージする処理

デフォルトではこのように文字化けしてしまいます

設定(S) > 「言語の設定」タブから、各ファイルの

エンコーディングで「Unicode, 8 ビット (UTF-8) を

指定してください.

Page 35: Git extensions ws外部公開用

© CROOZ,Inc. 35

コミットのみ実施する場合はこのボタンをクリック

同時にpushする場合はボタンをクリック

3.競合が発生した時の対処方法 対処手順 ローカルブランチ上でマージする処理

Page 36: Git extensions ws外部公開用

© CROOZ,Inc. 36

3.競合が発生した時の対処方法

「OK」をクリック

対処手順 ローカルブランチ上でマージする処理

Page 37: Git extensions ws外部公開用

© CROOZ,Inc. 37

対処手順 リポートブランチから pull する処理

以下のエラーが出てマージが失敗する

「OK」をクリック

3.競合が発生した時の対処方法

Page 38: Git extensions ws外部公開用

© CROOZ,Inc. 38

「競合の解決」をクリック

対処手順 リポートブランチから pull する処理

以下はローカルブランチ上でマージする処理と同様

3.競合が発生した時の対処方法

Page 39: Git extensions ws外部公開用

© CROOZ,Inc. 39

4.実践WS 実際にやってみましょう