git push
git push とはローカルで開発したものをリモートリポジトリに変更を反映するためのコマンド
GitHubでリポジトリを作成後手順通りpushしようとしたら、エラーや反映されてていないということが起こったのでメモしておく
ローカルリポジトリを作成する
コマンドラインでローカルの作業フォルダに移動
git initコマンドでローカルリポジトリを作成
1 | git init |
.gitというサブディレクトリが作成される
git addコマンドでファイルをインデックスに追加(Gitの管理にいれる)
1 | git add -A |
Gitのリポジトリでファイルを変更した場合、git commitコマンドで変更を登録する
1 | git commit |
変更したファイルだけコミットする場合は1
git commit ファイル名
変更した全てコミットする場合は1
git commit .
-aをつければなにもかもコミットコマンドは
git remoteコマンドでリモートリポジトリの情報をローカルに保存する
1 | git remote add origin https://github.com/ユーザー名/リポジトリ名.git |
これでリモートに保存された1
git remote -v
で打ち込んだリポジトリが登録されているか確認できる
git push origin masterコマンドで ローカルのmasterブランチをリモートリポジトリへ反映させる
(正式にはgit push origin master:master)1
git push origin master
これでリモートリポジトリに反映される
git push時にエラー
remote: Permission to ユーザー名1/リポジトリ名 denied to ユーザー名2
fatal: unable to access …… : The requested URL returned error: 403
という文が出た
どうやら複数のGitアカウントを使っている場合にユーザが混合してしまっているため、pushできないということ
とりあえずGUIでアカウント情報を修正してみる
- [コントロール]→ [パネル\ユーザー]→ [アカウント\資格情報マネージャー]へ移動
- 資格情報マネージャー”をクリック
- 一覧からgit:https://github.comをクリック
- 削除をクリックして情報を削除する
- もう一度Gitにコマンドで接続すると認証画面が出るので、使用するアカウント情報を入力すればpushできるようになる
Everything up-to-dateと出る場合
git push origin masterでEverything up-to-dateと出て反映されない場合がある
もう一度commitしてからやる必要があるので1
git commit -am "add feature"
の後に1
git push origin master
で無事にpushされた