[解決済み] Git push master fatal: あなたは現在ブランチ上にいません。
質問
マスターはコミット#10にあります。しかし、私は結局、テストによって捕捉されなかった、途中で何かを壊したことに気づきました。
結局、私はコミット #5 まで行き、それからゆっくりと各コミットの開発をやり直し、バグを再発生させないように継続的に調整しました。現在、私は本質的にコミット #10 に戻っていますが、バグが発生しないようにするために多くの変更が加えられています。
私は今、私の変更を使用してコミット #11 を作成したいと思います。しかし、master にプッシュしようとすると、次のようになります。
fatal: You are not currently on a branch.
To push the history leading to the current (detached HEAD)
state now, use
git push master HEAD:<name-of-remote-branch>
これは予想されたことです。しかし、実際にリモートブランチにプッシュするにはどうしたらいいのでしょうか?
私は
git push origin HEAD:master
を試しましたが、その後、このようになりました。
! [rejected] HEAD -> master (non-fast-forward)
error: failed to push some refs to 'https://github.com/tomhammond/sample.git'
hint: Updates were rejected because a pushed branch tip is behind its remote
hint: counterpart. Check out this branch and integrate the remote changes
hint: (e.g. 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
をすると
git status
とすると
HEAD detached from 4a74ac3
どのように解決するのですか?
<ブロッククオートしかし、マスターにプッシュしようとすると、次のようになります。
fatal: You are not currently on a branch.
To push the history leading to the current (detached HEAD)
当然といえば当然
切り離された状態で作業することは
ではなく
を期待するのは、あなたが意図的にこれを行いたいのでない限り、私はあなたにとってそうであることを疑っています。 コミット#5をチェックアウトする代わりに、あなたは
master
ブランチをそのコミットに戻すか、あるいは
git rebase
を実行し、好きなだけコミットを洗い直すことができます。
とは言うものの、もしあなたが確実に
master
がデタッチされた状態であることが確実な場合は
本当に
を保持したいのであれば、そのために
non-fast-forward
エラーを回避することができます。
git push origin HEAD:master --force
しかし、強制的にプッシュすると、そのブランチをチェックアウトしている他のすべてのユーザーに問題が発生する危険性があります。 よりリスクの少ない解決策は、切り離された HEAD から一時的なブランチを作成し、そのブランチを
master
:
git branch temp-branch
git checkout master
git merge temp-branch
git push origin master
関連
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] リモートのGitブランチをチェックアウトするには?
-
[解決済み] 新しいローカルブランチをリモートの Git リポジトリにプッシュし、それを追跡するにはどうすればよいのでしょうか?
-
[解決済み] Git でブランチからコミットを削除する
-
[解決済み] Git のリモートブランチを作成する方法を教えてください。
-
[解決済み] リモートにないトラッキングブランチを削除
-
[解決済み] detached HEADとmaster/originの連携はどうすればいいですか?
-
[解決済み] Gitのプッシュを正しく強制する方法は?
-
[解決済み] Git で最新のコミットを新しいブランチに移動する
-
[解決済み】ローカルのGitブランチの名前を変更するには?
最新
-
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で「このリポジトリでは別のgitプロセスが実行されているようです...」と表示される問題
-
git pull エラー: .git/FETCH_HEAD を開けない: パーミッションが拒否されました。
-
fatal: リモート参照マスタが見つかりませんでした。
-
Gitのエラーについて覚えておく-すべて最新にする
-
なぜこのマージが必要なのかを説明するコミットメッセージを git に入力してください。
-
[解決済み] Git - 歴史からコミットを削除する
-
git push please tell me who you are or git fatal: empty ident name (for <>) not llowed.
-
[解決済み] ローカルのGitブランチをリモートレポにコピーする方法
-
[解決済み] CVS から Git への移行: $Id$ 相当?
-
[解決済み] Git のプッシュが "non-fast-forward" で拒否されました。