さくらのVPSを使ってシステム開発に必要な知識を学ぶ 〜第5回〜
目次
はじめに
本連載は、システム開発に必要な知識を得るために、一通りの流れを学ぶことを目指しています。今回はgitコマンドを使う前に必要な準備を中心に解説します。
Gitで使用するユーザ名とメールアドレス
実際にgitコマンドを操作した時に記録されるユーザ名とメールアドレスを設定します。この設定は、gitを使い始める前に一度行えば十分です。
ユーザ名の設定
- 構文:git config user.name ユーザ名
メールアドレスの設定
- 構文:git config user.email メールアドレス
設定例
$ git config --global user.name "hogehoge"
$ git config --global user.email hogehoge@fuga.com
- hogehoge: GitHubで使用するユーザー名を入力して下さい
- hogehoge@fuga.com: GitHubで使用するメールアドレスを入力して下さい
- オプションについて
- --system:システム全体に対して設定
- --global:該当ユーザの全リポジトリに対して設定
- --local:該当のリポジトリのみ設定
- 通常は --global で設定することがほとんどです
sshの設定
事前確認
まずsshがインストールされていることを確認します。
$ which ssh
$ /usr/bin/ssh
次に、.sshディレクトリが存在することを確認します。
$ ls -la ~/.ssh
ls: /Users/lifewood/.ssh: No such file or directory
.sshディレクトリがない場合は作成します。
$ mkdir .ssh
$ ls -la ~/.ssh
total 0
drwxr-xr-x 2 lifewood staff 64 5 14 22:10 .
drwxr-x---+ 17 lifewood staff 544 5 14 22:10 ..
$ cd ~/.ssh
ssh keyの作成
sshを利用するには、公開鍵と秘密鍵を作成する必要があります。ssh-keygenコマンドを使用して作成します。-tオプションで指定しているrsaは暗号方式です。
$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/lifewood/.ssh/id_rsa): id_rsa
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in id_rsa
Your public key has been saved in id_rsa.pub
The key fingerprint is:
SHA256:xxxxxxxxxxx lifewood@lifewood-core-i7.local
The key's randomart image is:
sshの接続確認
sshによる接続ができるかどうかを確認します。下記のコマンドで確認できます。
$ ssh -T git@github.com
ssh keyをGitHubに設定
作成したssh keyのうち、公開鍵をGitHubに登録します。
まずは公開鍵をコピーします。下記のコマンド例ではpbcopyコマンドを使用していますが、これはMac環境で使えるコマンドです。Windowsなど他OSのユーザの方はマウスでコピーするなどしてください。
$ pbcopy < ~/.ssh/id_rsa.pub
次に、GitHubの設定ページを開きます。GitHubにログインし、画面右上のプロフィールアイコンから「Settings」を選ぶと設定ページに遷移します。
設定ページの左側メニューから「SSH and GPG keys」を選びます。するとssh keyの登録画面が表示されますので、「New SSH Key」ボタンをクリックします。
ssh keyの登録画面が出てきますので、Keyの欄に、先ほどコピーした公開鍵を貼り付けます。また、Title欄にkeyの名前を付けます(任意の名前で結構です)。
下図のようになれば設定完了です。
gitコマンドを使ってみる
ここからはgitコマンドの使い方を説明していきます。
gitコマンドの一覧表
gitには多数のコマンドがありますが、その中でもよく使うコマンドを一覧で紹介します。コマンドはアルファベット順に並んでいます。
コマンド名 | 用途 | 利用頻度 | 備考 |
---|---|---|---|
git add | コミット対象のファイルを登録 | ◎ | - |
git branch | ブランチの作成/一覧表示 | ◎ | - |
git checkout | 処理対象ブランチの切り替え | ◎ | - |
git clone | リポジトリをコピー | ◎ | - |
git commit | 変更されたファイルをコミット(ローカルリポジトリに変更内容を入れ込む) | ◎ | - |
git config | アカウント名やメールアドレスを指定します | ○ | - |
git diff | ファイル内の差分箇所を表示 | ○ | - |
git gc | リポジトリを最適化 | △ | 必要な場面が少ないです |
git init | リポジトリを新規作成 | △ | 自分で最初から作成する場合に使います |
git log | コミット履歴を表示 | ◎ | - |
git merge | 別のブランチから変更点をマージ | ◎ | - |
git mv | ファイルを移動/ファイル名を変更 | △ | 必要な場面が少ないです |
git pull | リモートリポジトリの変更点をローカルリポジトリにマージ | ◎ | - |
git push | ローカルリポジトリの変更点をリモートリポジトリにマージ | ◎ | - |
git rebase | 派生元ブランチに変更点をマージ | △ | gitコマンドに慣れてから使います |
git reset | 直前のコミットを取消 | ◎ | - |
git revert | 特定のコミットを取消 | ◎ | - |
git stash | 作業ツリーの状態を一時的に保存 | ○ | gitコマンドに慣れてから使います |
git status | 作業ツリー内の差分ファイルを表示 | ◎ | - |
git tag | コミットにタグを付ける | ○ | - |
- ◎:毎日のように使うコマンド
- ○:作業の節目に使うコマンド
- △:あとからマスターしてもよいコマンド
その他のコマンドについて
上記以外にも多数のコマンドがあります。さらに詳しく知りたい方は公式キュメントをご覧ください。
一般的な業務におけるgitコマンドの使い方
一般的な業務の流れにおいて、どのような場面でどんなgitコマンドを使うかを説明します。
- git clone
- 最初に、プロダクトのリポジトリをローカルPCにコピーします。
- git branch
- 作業をするにあたり、作業ブランチを作成します。
- オプションを使って、下記のgit checkoutと同時に切り替えることも可能です。
- git checkout
- 上記で作成した作業ブランチに切り替えます。
- オプションを使って、上記のgit branchと同時に切り替えることも可能です。
- git add
- 作業で変更したファイルをリポジトリに追加します。
- git commit
- 作業で変更したファイルをコミット(意訳:保存)します。
- git push
- 作業で変更したファイルをローカルリポジトリからリモートリポジトリにアップロードします。
6まで作業した後に、GitHubにてPull Requestを作成し、レビューを待ちます。
なお、本記事ではGitのブランチ戦略(git branchなどを使ったブランチの作成をどのような方針で運用するか)については説明を割愛します。
まとめ
今回はgitコマンドを使う前に必要な準備と、gitコマンドの一覧、および業務におけるgitコマンドを使った作業の大まかな流れを説明しました。次回は業務におけるgitコマンドの利用を、実例を交えて解説します。