【Visual Studio】GitHubにプッシュもプルもできない場合の原因と解決方法

Visual Studio

はじめに

今回はVisual Studioで沼にはまってしまったときの話です。

先日、Visual Studio 2022からGitHubへプッシュする機会があったのですが、 プッシュする前に「リモートの変更を統合するように要求する」旨のエラーが出ているのに、プルボタンがグレーアウトしていてプルができない状態になりました。

こういった問題はすでに解決した人もいるだろうと、技術系のブログ等を調べてみましたが、肝心の”どこに入力すればいい”のかが分からず、解決するまでにかなりの時間を要してしまったのです。

詳しく調べてみると、個々の環境によって”入力する場所”は大きく異なるようです。
私の作業環境での解決方法をまとめましたので、この記事も1つの例として、同様の症状になった方の参考になれば幸いです。

※Visual Studio 2022、2023年7月11日時点の情報です。

原因

先述したエラーの全文です。

rejected Updates were rejected because the tip of your current branch is behind its remote counterpart. Integrate the remote changes before pushing again.

Google翻訳で日本語に訳した内容がこちら

拒否されました 現在のブランチの先端がリモートのブランチの背後にあるため、更新が拒否されました。 再度プッシュする前に、リモートの変更を統合します。

翻訳ツールなので少々ぎこちないですが
「リモートリポジトリ上に変更があり、ローカルリポジトリ上にも変更があるので先にリモートリポジトリの変更をローカルに適用してください。」
という意味です。

これを解決するためにはプルを行えばいいのですが、プルボタンがグレーアウトしていて機能しません。

上流ブランチの設定がされていないと同じようなエラーが出るようです。

※上流ブランチとは、ローカルブランチが履歴を追跡するリモートブランチのことです。

解決方法

解決策ですが、開発者用Power Shellを開いて上級ブランチの設定をします。

「ソリューションエクスプローラー」で対象のプロジェクトを右クリックし ターミナルで開く をクリック

画面左下に開発者用Power Shellが開くので

$ git branch --set-upstream-to=origin/master master

と入力
※master 部分はご自身のブランチ名に変更してください

これで上流ブランチを設定できます。
GitHubからのプルが出来るようになるので、プルをしたのちプッシュすればOK

私の環境では無事GitHubにプッシュできました。

さいごに

このあたりの、知っていることが前提の知識は、解説を省略している記事が大半ですが、経験者なら当たり前に知っていることでも、私のような独学の人間は躓いてしまうことが多々あるんですよね・・・。

ここで時間を浪費してしまったのが釈然としなかったので、せめて同じ問題にハマってしまった方の参考になればと思い、記事としてまとめました。

このブログは他の記事でもそうですが、私自身「独学だと分かりにくくて調べるのが煩わしく感じる」ことが、誰かの参考になればと言う気持ちから書いている部分が大きいです。

またなにか気づいたことがあったら記事にしたいと思います。

では、今回は以上です。

タイトルとURLをコピーしました