Gitで、ローカル編集した内容をリモートに反映する方法と、認証に詰まった時の対応
これやって通ればOK。
git status
git add .
git commit -m "ここに変更内容メモ"
git pull origin main
git push origin main
何をやってるコマンドか解説
git status→ 何のファイルが変わってるか、Untracked(新規)ファイルがあるかを見る。
git add . → 全ての変更をステージに載せる(stage)
git add path/to/file1 path/to/file2 → ※個別のパスを指定したいときはこれ。
git commit -m "ここに変更内容メモ" → コミットを作る(local のスナップショット)
git pull origin main → リモートの最新を引き入れて取り込むイメージ。
fetch(リモートの最新状況を取ってくる)と、merge(その最新情報をローカルに反映する)を、pullコマンドで同時にやっている。
もしコンフリクトが出たら、そのファイルを手で直して
git add → git commit でもう一度スナップショット作る。
git push origin main → mainブランチに対して変更を押し出して統合するイメージ
認証エラーが起きた時の、AIアドバイスのメモ
お、ちゃんと git push origin main まで来てるのナイスです⚔️
で、今つまずいてるのは 「GitHub側のログイン方式が変わった問題」 のところ。
Password authentication is not supported for Git operations.
って出てるのは、
「もう普通のパスワードじゃ push させないよ。トークン使ってね」
っていう GitHub からのメッセージ。
✅ ゴール
ローカルの main → GitHub の AIDojo リポジトリに push できる状態にする
ここでは一番シンプルな
HTTPS + パーソナルアクセストークン(PAT)
で行く手順を書きます。
🪜 手順①:今の remote を一応確認
ターミナルで:
git remote -v
おそらくこうなってるはず:
origin https://github.com/ykishimotoy/AIDojo (fetch)
origin https://github.com/ykishimotoy/AIDojo (push)
この origin がさっきの git push origin main の送り先。
OK、リモート先は問題なし。
詰まってるのは「認証方法」だけ。
🪜 手順②:GitHubでパーソナルアクセストークンを作る
ブラウザで GitHub にログイン(ykishimotoy アカウント)
右上アイコン → Settings
左メニュー一番下あたりの
「Developer settings」 をクリック
「Personal access tokens」 → 「Tokens (classic)」 を選択
「Generate new token (classic)」 をクリック
名前は適当に
例:"aidojo-macbook-token"
有効期限はお好み(90日とか半年とか)
スコープ(権限)は最低これにチェック:
repo(レポジトリ操作用)
一番下の 「Generate token」 を押す
表示されたトークン文字列を 必ずコピーしてメモ
→ 二度と同じものは見れないので注意
これが 今後「Git のパスワード代わり」に使う文字列。
🪜 手順③:古いパスワード情報を消す(macOS キーチェーン)
(補足、ここはなくてもいけました)
今、「間違った認証情報」が macOS に記憶されていて
それで Invalid username or token って怒られてる可能性が高い。
① キーチェーンアクセスを開く
Spotlight で Keychain Access を検索して起動(日本語なら「キーチェーンアクセス」)
左上「ログイン」キーチェーンを選択
右上の検索窓に github.com と入れる
② GitHub関連のエントリを削除
github.com とか https://github.com とか
GitHub っぽい「インターネットパスワード」がいくつか出るので
怪しそうなのを右クリック → 「削除」
(多少雑に消しても、あとでまた聞かれるだけなので問題なし)
🪜 手順④:もう一度 push して、新トークンでログイン
ターミナルに戻って:
git push origin main
今度はこう聞かれるはず👇
Username:
→ GitHub のユーザー名(例:ykishimotoy)
Password:
→ さっき発行した パーソナルアクセストークン(PAT) をペースト
(GitHubのログインパスワードじゃない!)
これで通れば、
Enumerating objects...
Counting objects...
Delta compression...
Writing objects...
To https://github.com/ykishimotoy/AIDojo
xxxxxxx..yyyyyyy main -> main
みたいなログが出て push 完了 🎉
Discussion