1. ホーム
  2. git

[解決済み] fatal: 現在のブランチマスターには上流のブランチがありません。

2022-03-16 13:35:19

質問

あるプロジェクトをgithubにプッシュしようとしているのですが、このエラーがずっと続いています。

peeplesoft@jane3:~/846156 (master) $ git push

fatal: The current branch master has no upstream branch.
To push the current branch and set the remote as upstream, use

     git push --set-upstream origin master

そこで試してみたところ、こんな感じになりました。

peeplesoft@jane3:~/846156 (master) $ git push --set-upstream origin master

fatal: Authentication failed

別のstackoverflowのスレッドでは、次のように試してみることを提案されましたが、残念な結果でした。

peeplesoft@jane3:~/846156 (master) $ git push -u origin master

fatal: Authentication failed

そこで、こんなことをやってみた。

peeplesoft@jane3:~/846156 (master) $ git config remote.origin.push HEAD

peeplesoft@jane3:~/846156 (master) $ git push

fatal: Authentication failed

何かヒントはありますか?

解決方法は?

プッシュを修正したとのことですが、そのプッシュの問題とは別に("で説明しました。 なぜ新しいブランチを明示的にプッシュする必要があるのですか? "。 git push -u origin master または git push -u origin --all ) の場合、認証の問題を解決する必要があります。

それはあなたのurlに依存します('sshのように [email protected]/yourRepo または https のように https://github.com/You/YourRepo )

httpsのurlの場合。

で保護されている場合、そのアカウントは 二要素認証 の場合、通常のパスワードは使用できません(httpsのURLの場合)。 こちらで解説しているように またはこちら .

パスワードに特殊文字が含まれている場合(例えば この答え )

httpsがうまくいかない場合(セカンダリキー、PAT: personal Access Tokenを生成したくないため)、sshに切り替えることができます。 ここで紹介したように .


が指摘するように qwerty というコメントで、リモートで同名のブランチを自動的に作成することができます。

git push -u origin head 

なぜ?

  • HEAD(あなたの .git\HEAD ファイル) には、現在チェックアウトされているブランチの refspec (例. ref: refs/heads/master )
  • デフォルトの プッシュポリシー シンプル

このプッシュに使用される refpec は head です。(宛先なし) であるため :<dst> と同じ参照先を更新することを意味します。 <src> (head、これはブランチである)。

の場合はうまくいきません。 HEADがデタッチされている とはいえ