趣旨
GitHubの初期設定のやり方を毎度忘れて毎度検索してるのでそれに終止符を打ちます。
間違えてる部分があったらご指摘をお願いします。
GitHubとGitとSSH接続の設定
GitHubでプロジェクトを始める際の手順と、それに伴うGitおよびSSH接続の設定について解説します。プロジェクトを新しく始める場合と、既にローカルでコードを書き始めている場合の2つのシナリオに分けて説明します。
まっさらな状態から始める場合
GitHubでリポジトリを作成する
- GitHubにログインします。
- 右上の**「New repository」**ボタンをクリックします。
- リポジトリ名を入力し、「Initialize this repository with a README」 のチェックボックスをオフにしてリポジトリを作成します。これにより、空のリポジトリが作成されます。
ローカルにリポジトリをPullする
- Git Bashやターミナルを開きます。
-
git clone [リポジトリのURL]
- このコマンドは、GitHub上に作成したリポジトリをローカルマシンにコピーします。
-
[リポジトリのURL]
は、GitHubリポジトリページの「Clone or download」ボタンから取得できます。
既にコードを書き始めている場合
GitHubでリポジトリを作成する
- 先ほどと同じ手順でGitHub上に新しいリポジトリを作成しますが、READMEの初期化は行いません。
SSH接続設定をする
-
SSHキーを生成する
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
- このコマンドは、SSHプロトコルで安全に通信するためのキーペアを生成します。
"your_email@example.com"
はGitHubアカウントに関連付けられたメールアドレスに置き換えてください。
-
生成した公開キーをGitHubに登録する
cat ~/.ssh/id_rsa.pub | clip
- このコマンドは、公開キーの内容をクリップボードにコピーします。その後、GitHubのユーザー設定ページからSSHキーを新規に追加し、クリップボードの内容を貼り付けます。
ローカルからGitHubにPushする
-
Gitリポジトリの初期化
git init
- このコマンドは、現在のディレクトリをGitリポジトリとして初期化します。
-
ファイルのステージング
git add .
- このコマンドは、変更されたすべてのファイルをGitのステージングエリアに追加します。
-
コミットの作成
git commit -m "初回コミットのメッセージ"
- このコマンドは、ステージングエリアに追加された変更をコミットします。コミットメッセージは、行った変更の説明を簡潔に記載します。
-
GitHubリポジトリとのリンク
git remote add origin [リポジトリのSSH URL]
- このコマンドは、ローカルのリポジトリとGitHub上のリポジトリを関連付けます。
[リポジトリのSSH URL]
は、リポジトリページの「Clone or download」ボタンからSSH形式で取得できます。
-
GitHubへのプッシュ
git push -u origin master
- このコマンドは、ローカルの変更をGitHub上のリポジトリにプッシュします。初回プッシュ時には、ブランチ(ここでは
master
)を明示的に指定する必要があります。
以上の手順で、GitHubを使ったプロジェクトの管理を行う準備が整います。何か疑問点があれば、GitHubやGitの公式ドキュメントを参照すると良いでしょう。
ssh-keygen
ssh-keygen コマンドは、SSHプロトコルで使用する公開鍵認証のためのキーペア(公開キーと秘密キー)を生成するために使用されます。
ssh-keygen: SSHキーペアを生成するコマンドです。
-t rsa: キーのタイプを指定します。ここではrsaを使用していますが、他にdsa、ecdsa、ed25519などがあります。rsaは広く使用されている安全なアルゴリズムです。
-b 4096: キーのビット長を指定します。4096ビットは現在推奨される長さで、より高いセキュリティを提供します。デフォルトは2048ビットですが、より強固なセキュリティを求める場合は4096ビットを選択します。
-C "your_email@example.com": キーに関連付けるコメントです。ここではメールアドレスを使用していますが、任意の文字列を使用できます。このコメントはキーを識別するのに役立ち、特に複数のキーを管理する場合に有用です。
ssh-keygen コマンドを実行すると、キーペアの生成プロセスを開始され、~/.ssh/id_rsa(秘密キー)と~/.ssh/id_rsa.pub(公開キー)というファイルに保存されます。プロセス中にパスフレーズの設定を求められることがあります。パスフレーズはオプションですが、秘密キーの追加保護として設定することをお勧めします。キーペアが作成された後、公開キー(.pubファイル)をサーバーに登録することで、パスワードなしで安全にサーバーへのSSH接続が可能になります。
このコマンドは、リモートサーバへのセキュアなアクセスを設定する際に非常に重要であり、GitHubのようなサービスでSSH経由での安全なGit操作を行うためにも使用されます。