Git 環境の設定(Windows) - BYOD PC のセッティング(10)

はじめに

電気電子工学コースでは、ペアプログラミングやチームプログラミングを実施している。このため、ソース共有が必須となる。また、個人でファイルを管理している際にバージョン管理の意識を持つことは重要である。そこで、何よりもまずリポジトリ管理について学んでもらう。ここでは、Git の設定方法のみ実施し、実際の使い方は授業資料の方で解説する。

インストール方法

git コマンドのインストール

Windows では Git 環境はインストールされないので、個人的にインストールが必要となる。ここでは、パッケージ管理ソフトウェアの設定(Windows) - BYOD PC のセッティング(4) - hkob’s blogで設定した chocolatey を使ってインストールする。まず、PowerShell を管理者として実行する。その後、cinst -y gitとしてインストールする。次のような表示になっていれば成功である。

f:id:hkob:20200407112212p:plain
Git のインストール

SourceTree のインストール

macOS 版では次に公開鍵/秘密鍵の設定を行うが、Windows では SourceTree の中で実施するため先に SourceTree をインストールする。こちらも、そのまま PowerShell でインストールを続ける。今度はcinst -y sourcetreeとすると次のようになる。スクリーンショットに収まらなかったので、テキストで示す。

PS C:\Windows\system32> cinst -y sourcetree
Chocolatey v0.10.15
Installing the following packages:
sourcetree
By installing you accept licenses for the packages.
Progress: Downloading dotnet4.7.1 4.7.2558.20190226... 100%
Progress: Downloading dotnetfx 4.8.0.20190930... 100%
Progress: Downloading chocolatey-dotnetfx.extension 1.0.1... 100%
Progress: Downloading KB2919355 1.0.20160915... 100%
Progress: Downloading KB2919442 1.0.20160915... 100%
Progress: Downloading SourceTree 3.3.8... 100%

chocolatey-dotnetfx.extension v1.0.1 [Approved]
chocolatey-dotnetfx.extension package files install completed. Performing other installation steps.
 Installed/updated chocolatey-dotnetfx extensions.
 The install of chocolatey-dotnetfx.extension was successful.
  Software installed to 'C:\ProgramData\chocolatey\extensions\chocolatey-dotnetfx'

KB2919442 v1.0.20160915 [Approved]
kb2919442 package files install completed. Performing other installation steps.
Skipping installation because this hotfix only applies to Windows 8.1 and Windows Server 2012 R2.
 The install of kb2919442 was successful.
  Software install location not explicitly set, could be in package or
  default install location if installer.

KB2919355 v1.0.20160915 [Approved]
kb2919355 package files install completed. Performing other installation steps.
Skipping installation because this hotfix only applies to Windows 8.1 and Windows Server 2012 R2.
 The install of kb2919355 was successful.
  Software install location not explicitly set, could be in package or
  default install location if installer.

dotnetfx v4.8.0.20190930 [Approved]
dotnetfx package files install completed. Performing other installation steps.
Microsoft .NET Framework 4.8 or later is already installed.
 The install of dotnetfx was successful.
  Software install location not explicitly set, could be in package or
  default install location if installer.

dotnet4.7.1 v4.7.2558.20190226 [Approved]
dotnet4.7.1 package files install completed. Performing other installation steps.
 The install of dotnet4.7.1 was successful.
  Software install location not explicitly set, could be in package or
  default install location if installer.

SourceTree v3.3.8 [Approved]
sourcetree package files install completed. Performing other installation steps.
Downloading SourceTree
  from 'https://product-downloads.atlassian.com/software/sourcetree/windows/ga/SourcetreeEnterpriseSetup_3.3.8.msi'
Progress: 100% - Completed download of C:\Users\hkob\AppData\Local\Temp\chocolatey\SourceTree\3.3.8\SourcetreeEnterpriseSetup_3.3.8.msi (21.81 MB).
Download of SourcetreeEnterpriseSetup_3.3.8.msi (21.81 MB) completed.
Hashes match.
Installing SourceTree...
SourceTree has been installed.
  sourcetree may be able to be automatically uninstalled.
 The install of sourcetree was successful.
  Software installed as 'msi', install location is likely default.

Chocolatey installed 6/6 packages.
 See the log for details (C:\ProgramData\chocolatey\logs\chocolatey.log).

Installed:
 - kb2919355 v1.0.20160915
 - dotnetfx v4.8.0.20190930
 - kb2919442 v1.0.20160915
 - sourcetree v3.3.8
 - chocolatey-dotnetfx.extension v1.0.1
 - dotnet4.7.1 v4.7.2558.20190226

インストールの結果、デスクトップに「SourceTree」へのショートカットが表示される。

SourceTree の初期設定

SourceTree を起動すると、macOS と同様に Bitbucket アカウント確認画面が開く。ここで注意してほしいのは必ず学校のアカウント「mXXXXX@g.metro-cit.ac.jp」で登録することである。Bitbucket はアカデミックの特典があり、グループ人数の制約がなくなる。4 年生のチームプログラミングでは私を含めると5人以上のチームになる可能性もあるため、必ず学校のメールアドレスで作成すること。ここから先は未設定のメールアドレスがないとスクリーンショットが取れないので、個人で頑張ってほしい。

f:id:hkob:20200407114543p:plain
SourceTree の起動画面

認証が終わると次のような登録完了画面になる。次へをクリックする。

f:id:hkob:20200407123717p:plain
登録完了画面

次にツールのインストール画面になるが、すでに Git はインストール済なので何もせず「次へ」をクリックする。

f:id:hkob:20200407123921p:plain
ツールのインストール画面

次の画面ではグローバル作成者を設定する。リポジトリに名前が出るのでニックネームのようなものは避け、本人が確認できる名前にして欲しい(授業評価の際に名寄せをするため、変な名前にななっているとかなり苦労する)。ここでは記載していないが、メールアドレスも正しく設定すること。

f:id:hkob:20200407124220p:plain
個人名とメールアドレスの設定

次に公開鍵/秘密鍵の読み込みが行われるが、まだ作成していないので「いいえ」をクリックする。

f:id:hkob:20200407124606p:plain
SSH キーの読み込み

公開鍵/秘密鍵の作成

次に SSH の公開鍵/秘密鍵を作成する。先ほど起動した SourceTree のツールメニューから「SSH キーの作成/インポート」をクリックする。

f:id:hkob:20200407125227p:plain
SourceTree メニュー

PuTTY Key Generator が立ち上がるので、真ん中あたりの「Generate」をクリックする。乱数生成のために、マウスカーソルを動かすように表示されるので、その指示に従う。

f:id:hkob:20200407125731p:plain
PuTTY Key Generator

生成が終わると作成されたキーが表示される。ここで実施する作業は3つである。一つ目は公開鍵文字列の退避である。OpenSSH 形式の Public Key (公開鍵) が一番上の部分に表示されているので、この「ssh-rsa」から始まるこの枠内の全ての文字列をメモ帳などにコピーしておく。

f:id:hkob:20200407141440p:plain
作成されたキー

二つ目は公開鍵の保存である。下にある「Save public key」をクリックし、「id_rsa.pub」などとして保存する。保存場所は自分のドキュメントフォルダの下に「ssh_key」のようなフォルダを作ってそこに置いておく。

f:id:hkob:20200407151613p:plain
公開鍵の保存
最後に秘密鍵の保存である。同様に「Save private key」をクリックする。すると次のようなパスフレーズの確認が入る。今回は「はい」を選択する。セキュリティを気にする場合にはパスフレーズを設定してもよいが学生の課題程度であればパスフレーズは省略してもよいと思う。設定した場合には、エージェント起動時に毎回パスフレーズが求められるようになる。
f:id:hkob:20200407142847p:plain
パスフレーズの確認

はいを押すと先ほどと同様に保存画面が現れるので、「id_rsa」と入れて保存する(自動的にppkという拡張子が付く)。

f:id:hkob:20200407151743p:plain
秘密鍵の保存

次に同じく「ツール」メニューの「オプション」をクリックする。中段の「SSH クライアントの設定」の SSH キーの右にある「...」をクリックし、先ほど保存した「id_rsa.ppk」を選択する。その下の部分に「SourceTree 起動時に SSH エージェントを起動します」にチェックが入っていることも確認する(デフォルトで入っているはず)。最後に「OK」を押して設定を完了する。

f:id:hkob:20200407151927p:plain
オプションにおける「SSH key」の設定

SSH エージェント起動の確認

SSH キーの設定を行なったが、すでに SourceTree を起動時に無設定の SSH エージェントが起動してしまっている。最初にこの起動してしまったエージェントを終了する。まず、右下の「∧」(赤丸部分)をクリックし、PCアイコン(橙色丸部分)で右ボタンを押し、ポップアップされた「Exit」をクリックする。

f:id:hkob:20200407161118p:plain
エージェント起動の確認

その後、SourceTree を終了し、再度 SourceTree を起動する。そして、上記の手順で表示されたポップアップの「View Keys」をクリックする。これで「Pagent key list」に表示がされていれば設定完了である。

f:id:hkob:20200407163305p:plain
Pagent key list

公開鍵の Bitbucket への登録

(4/10追加)

公開鍵の登録方法は機種ごとにだいぶ異なるので、こちらに記載することにした。以下のように Bitbucket に公開鍵を登録する。まず、Bitbucketにログインし、左下の自分のアイコンをクリックし、Bitbucket settings をクリックする(画面は macOS のスクリーンショット だが Windows でも同じ。以下、Bitbucket の画面は一部 macOS のものを使う)。

f:id:hkob:20200410090731p:plain
Bitbucket settings

  1. セッティング画面が開いたら、セキュリティのところにある「SSH鍵」をクリックする。

    f:id:hkob:20200410091146p:plain
    SSH鍵

  2. SSH の画面が出てきたら、「鍵を追加」をクリックする。

  3. SSH 鍵を追加という画面が出るので、「Label」の部分にマシンがわかる名前を記入する。

    f:id:hkob:20200410092001p:plain
    SSH 鍵を追加

  4. 鍵を生成した時にメモ帳などに貼り付けていたキーがある人は、それを「Key」に貼り付ける。もし、テキストをなくしてしまった人は、再度 SourceTree の「ツール」「SSHキーの作成/インポート」から作成済のキーを読み込めばよい。中心付近にある「Load」をクリックして、先に保存した「id_rsa.ppk」を読み込む。一番上のフィールドの「ssh-rsa」から始まる文字列をコピーする。

  5. 先ほどの Bitbucket の画面で「Key」の部分をクリックし、「Ctrl-V」(または右ボタンでペースト)をして、公開鍵の内容を貼り付ける。Ctrl-V もよく使うので覚えておくこと。

  6. 最後に「鍵を追加」として保存する。PC を追加で登録したり、iPad などを接続したいというときなどにはそれぞれのマシンごとに公開鍵を登録していくこと。

ここから先の使い方は授業資料で説明する。

以上。

hkob.hatenablog.com