Gitの導入

「Git」とはオープンソース(無料)のバージョン管理システムです。
ファイルのバージョンごとの差分を確認したり、過去のバージョンに戻したりすることが可能です。

Gitには2通りの操作方法があります。
「コマンドライン」という文字だけで操作する方法と、「GUI」というボタンをクリックして操作する方法がありますが、今回はコマンドラインで操作していきます。

この導入手順では、Windowsを使用している場合の「Gitのインストール → GitHubでリモートリポジトリの作成 → SSHの設定 → ローカルにリモートリポジトリをクローン」という手順を説明しています。

導入手順

  1. Windowsの場合は公式サイトから「Git」をダウンロードします。
  1. インストール時に、「Git Bash Here」にチェックが入ってることを確認してください。その他のインストール時の設定は全て標準のままで問題ありません。
  1. インストールされたGit Bashを起動し、以下の画面が表示されていれば正常にインストールされています。
  1. 自分のリモートリポジトリを管理してくれるサービスの「GitHub」にアカウントを作成します。他人のアカウントを使う場合は作成の必要はありません。複数人で作業する場合は、GitHubの代わりに「Azure DevOps」という作業の進捗管理などの機能がついているサービスが使いやすかったりします。
  1. GitHubにログインし、リポジトリを作成します。
  1. ローカルからGitHubにはアクセスするにはSSHキーが必要になります。
    Git Bashを開き、以下のコマンドで「ed25519」というアルゴリズムによってSSHキーを作成します。
ssh-keygen -t ed25519 -C "GitHubに登録しているメールアドレス"
  1. Windowsであれば、以下のディレクトリにSSHキーが作成されるのでファイルを確認します。
    拡張子が.pubのファイルが公開鍵で、拡張子のないファイルが秘密鍵です。
cd /c/Users/ユーザー名/.ssh
ls
  1. ssh-agentを起動します。
eval "$(ssh-agent -s)"
  1. SSHの設定ファイルを作成します。以下はVisual Studio Codeを使って設定ファイルを作成する場合のコマンドです。
code ~/.ssh/config
  1. 設定ファイルに以下を入力し、保存します。
Host *
  AddKeysToAgent yes
  IdentityFile ~/.ssh/id_ed25519
  1. SSHキーをssh-agentに登録します。
ssh-add ~/.ssh/id_ed25519
  1. GitHubに公開鍵を登録するため、公開鍵をクリップボードにコピーします。
clip <~/.ssh/id_ed25519.pub
  1. GitHubにログインし、Settings > SSH and GPG keys > New SSH key を開きます。
    クリップボードにコピーした公開鍵を貼り付け、Add SSH keyをクリックします。
  1. Git Bashでローカルのユーザーを設定します。
    GitHubに登録したユーザー名とメールアドレスを使用してください。
git config --global user.name "ユーザー名"
git config --global user.email "メールアドレス"
git config --global --list
  1. リモートリポジトリをローカルリポジトリにクローン(コピー)するため、GitHubにログインし、クローンするリポジトリを開きます。Code > SSH > コピーアイコンの順番にクリックします。
  1. Git Bashでリポジトリのクローン先ディレクトリに移動し、先ほどコピーしたリポジトリのURLをgit cloneコマンドの後に張り付けて実行します。初めて実行する場合はAre you sure you want to continue connecting?と聞かれるのでyesと回答します。
cd ~/Desktop
git clone git@github.com:guregu321/sample-repo.git
  1. ローカルリポジトリに紐づいているリモートリポジトリのURLは以下のコマンドで確認できます。
cd ~/Desktop/sample-repo #ローカルリポジトリのディレクトリに移動
git remote -v

※GitBashのデフォルトのテキストエディタはVimですが、初心者にはとっつきにくいのでVisual Studio Codeに変更することをお勧めします。

git config --global core.editor "code --wait"
タグ: