[解決済み] Git push non-fast-forward updates were rejected "とはどういう意味ですか?
質問
私は2台のコンピューターと開発を管理するためにGitを使っています。GitHub に変更をコミットしようとすると、次のようなエラーが発生します。
にいくつかの参考文献をプッシュするのに失敗しました。
<repo>
. 履歴を失わないために、fast-forward でない更新は拒否されました。再度プッシュする前にリモートの変更をマージしてください。
何が原因で、どのように修正すればよいのでしょうか?
EDITです。
レポを引っ張ると以下のようなものが返ってきます。
*ブランチ master->master (非ファストフォワード) すでに最新版
プッシュしても前述のようなエラーが出ます。
解決方法は?
GitHubには、"という素敵なセクションがあります。 非速送り」エラーへの対応 "。
このエラーは、最初は少し圧倒されるかもしれませんが、恐れることはありません。
簡単に言うと、git はリモートのコミットを失うことなく変更を加えることができないので、プッシュを拒否しているのです。 .
通常、これは他のユーザーが同じブランチにプッシュした場合に起こります。リモートブランチを取得してマージするか、pull を使って両方を一度に実行することで、これを改善することができます。また、以下のようなコマンドを使用してローカルで破壊的な変更を行った結果、このエラーが発生する場合もあります。
git commit --amend
またはgit rebase
.
を追加することで、リモートをオーバーライドすることができます。--force
をpush
コマンドを使用する場合は、絶対にこれだと確信できる場合のみにしてください。
強制プッシュは、リモートブランチを取得した他のユーザーに対して問題を引き起こす可能性があり、バッドプラクティスとみなされます。 疑問がある場合は、強制プッシュをしないでください。 .
Git は、fast-forward merge のようにリモートで変更を行うことはできません。 Git ビジュアルリファレンス のように図解しています。
これは
まさに
がどのようなものかを知るのに役立ちます。
HEAD
のブランチは、単に新しいより新しいコミットに移動されます)。
の"です。
branch master->master (non-fast-forward) Already-up-to-date
は、通常、リモートの相手を追跡していないローカルブランチのためのものです。
例えば、このSOの質問"をご覧ください。
git pullでは最新と表示されるが、git pushではnon-fast forwardが拒否される。
"。
あるいは、2つのブランチはつながっているが、それぞれの履歴に不一致がある。
"をご覧ください。
終わらないGITの話 - ここで間違っていることは何ですか?
"
これは、あなたの subversion ブランチとリモートの git master ブランチが、何かで合意していないことを意味します。
一方にプッシュ/コミットされた変更点のうち、もう一方にないものがある。
起動する
gitk --all
履歴の中に "forks" があるので、何が問題だったのかが分かるはずです。
関連
-
[解決済み】現在のブランチの先端がリモートブランチより遅れているため、更新が拒否されました。
-
[解決済み] detached HEADとmaster/originの連携はどうすればいいですか?
-
[解決済み] Gitのプッシュを正しく強制する方法は?
-
[解決済み] 古いリモート git ブランチのクリーンアップ
-
[解決済み] GitHub から特定のブランチをプルする
-
[解決済み] なぜ git はデフォルトで fast-forward マージを行うのですか?
-
[解決済み】"git pull" でローカルファイルを強制的に上書きするには?
-
[解決済み】Gitでコミットをチェリーピックするというのはどういう意味ですか?
-
[解決済み】Featureブランチのリベースの後、Gitプッシュが拒否される。
-
[解決済み】Gitのワークフローとrebaseとmergeの質問
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】マージ後のコミットでGitエラー - fatal: マージ中に部分コミットができない
-
[解決済み】マージの競合が発生した git stash pop の取り消し
-
[解決済み】GitHub: クローンには成功したが、チェックアウトに失敗した
-
[解決済み】未マージファイルがあるため、Gitマージができない
-
[解決済み】Git Push Error: リポジトリデータベースにオブジェクトを追加する権限が不足しています。
-
[解決済み] LFはgitでCRLFに置き換えられます - それは何ですか、そしてそれは重要ですか?[重複]。
-
[解決済み] 警告: リモート HEAD は存在しない参照元を参照しているため、チェックアウトできません。
-
[解決済み] git rebase: "error: cannot stat 'file': パーミッションが拒否されました"
-
[解決済み] ssh-keygen' は内部コマンドまたは外部コマンドとして認識されません。
-
[解決済み] git push rejected