0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【実録】WSL2からGitHubへTerraformコードを初プッシュ:エラーを乗り越えた全手順

0
Posted at

1. はじめに

AWSインフラをTerraformで構築する学習の第一歩として、作成したコードをGitHubで管理する設定を行いました。
初心者が陥りやすい「不要なファイルのコミット」や「GitHubの認証エラー」の解決策を含め、実行したコマンドの意味を一つずつ丁寧に解説します。


2. 安全にプッシュするための事前準備:.gitignore

Gitで管理したくないファイル(AWS CLIの本体や、機密情報を含むTerraformの状態ファイル)をあらかじめ除外します。

# .gitignoreの作成
cat <<EOF > .gitignore
.terraform/           # 初期化時にダウンロードされたプラグイン
*.tfstate             # インフラの現在の状態(機密情報を含む可能性あり)
*.tfstate.backup
.terraform.lock.hcl   # バージョン固定用ファイル
aws/                  # AWS CLIのインストールディレクトリ(巨大なため除外)
awscliv2.zip          # インストール用アーカイブ
EOF

3. GitHubへのプッシュ手順とコマンドの意図

① ローカルリポジトリの初期化

git init
git branch -M main
  • 意図: 現在のディレクトリをGitの管理下に置き、デフォルトのブランチ名を main に設定します。

② ユーザー情報の登録(初回のみ)

git config --global user.email "your-email@example.com"
git config --global user.name "YourName"
  • 意図: 「誰がこのコードを書いたか」という署名を設定します。これがないとコミットできません。

③ ファイルの選択と記録(コミット)

git add .
git commit -m "Initial commit: clean infrastructure code"
  • 意図: add で「どのファイルを保存するか」を選び、commit で「その時点の状態をメッセージと共に保存」します。

④ リモートリポジトリ(GitHub)との紐付け

git remote add origin https://github.com/ユーザー名/リポジトリ名.git
  • 意図: 自分のPC(ローカル)と、GitHub上の箱(リモート)のリンクを作成します。

⑤ GitHubへの送信(プッシュ)

git push -u origin main
  • 意図: ローカルの記録をGitHubへアップロードします。

4. 【重要】ハマったポイントと解決策

トラブル1:GitHubのパスワード認証エラー

Password authentication is not supported というエラーが出ました。

  • 原因: 現在のGitHubはセキュリティ上、普通のパスワードでのGit操作を禁止しています。
  • 解決策: Personal Access Token (PAT) を発行し、パスワード欄にその「トークン(ghp_...)」を入力することで解決しました。

トラブル2:不要なファイル(AWS CLI)が混入してしまった

最初のコミット時に、誤って数千個の実行ファイルを含めてしまいました。

  • 解決策: 以下の手順で歴史を「掃除」しました。
    1. rm -rf .git で一度管理情報をリセット
    2. .gitignore を正しく設定し直す
    3. 再度 git addgit commit
    4. git push -f origin main でGitHub側の汚れた履歴を強制的に上書き

5. まとめ

今回の作業を通じて、以下のスキルを習得できました。

  • .gitignore による適切なファイル管理(不要なものを上げない)
  • GitHubのトークン認証によるセキュアな接続
  • Gitの履歴をクリーンに保つためのリセット操作

GitHubにコードが公開されたことで、ようやくクラウドエンジニアとしての「実績」が目に見える形になりました。次は、このVPCにサブネットやサーバーを追加し、さらに構成を成長させていきます!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?