[解決済み] Git マージエラー
質問
というgitブランチを持っています。
9-sign-in-out
で、完全に動作するコードがあり、それをマスターにしたいのです。現在、私はmasterブランチにいます。
$ git branch
9-sign-in-out
* master
に切り替えようとしています。
9-sign-in-out
という分岐があるのですが、それができません。
$ git checkout 9-sign-in-out
app/helpers/application_helper.rb: needs merge
config/routes.rb: needs merge
error: you need to resolve your current index first
マスターブランチのエラーをすべて無視して
9-sign-in-out
ブランチがマスターになるのでしょうか?たぶん、git
リベース
? のコードを失いたくないのです。
9-sign-in-out
のブランチを作成します。
解決方法は?
これらのエラーメッセージの意味を理解することは価値があります。
needs merge
と
error: you need to resolve your current index first
は、マージが失敗し、それらのファイルにコンフリクトがあることを示しています。 もし、あなたが行おうとしていたマージが結局は悪い考えであったと判断したのであれば、次のようにして物事を正常に戻すことができます。
git reset --merge
しかし、そうでない場合は、それらのマージの競合を解決する必要があります。 git マニュアルに記載されているように .
どちらかの手法で対処したら、次は
9-sign-in-out
のブランチを作成します。 ブランチの名前を変更するだけでは問題があります。
9-sign-in-out
から
master
で提案されているように
wRARさんの回答
というのは、もし以前の master ブランチを誰かと共有している場合、2 つのブランチの歴史が分かれると、書き直された歴史を公開することになり、問題が生じるからです。
基本的にあなたがしたいことは、トピックブランチをマージすることです。
9-sign-in-out
を
master
が、トピックブランチにあるファイルのバージョンは正確に維持します。 これは以下の手順でできます。
# Switch to the topic branch:
git checkout 9-sign-in-out
# Create a merge commit, which looks as if it's merging in from master, but is
# actually discarding everything from the master branch and keeping everything
# from 9-sign-in-out:
git merge -s ours master
# Switch back to the master branch:
git checkout master
# Merge the topic branch into master - this should now be a fast-forward
# that leaves you with master exactly as 9-sign-in-out was:
git merge 9-sign-in-out
関連
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] git pull」と「git fetch」の違いは何ですか?
-
[解決済み] コミット前に 'git add' を取り消すにはどうすればよいですか?
-
[解決済み] 現在のGit作業ツリーからローカル(未追跡)ファイルを削除する方法
-
[解決済み] Git リポジトリでのマージの衝突を解決するには?
-
[解決済み] まだプッシュされていない Git マージを元に戻す
-
[解決済み] 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のエラー。リモートリポジトリへの接続時に「Host Key Verification Failed」。
-
[解決済み】なぜ「git commit」は私の変更を保存しないのですか?
-
[解決済み] [email protected] へのいくつかの参考文献のプッシュに失敗しました。
-
[解決済み】Git Push Error: リポジトリデータベースにオブジェクトを追加する権限が不足しています。
-
[解決済み] GitBash | origin master - rejected (fetch first) | GitHub リポジトリにファイルがない。
-
[解決済み] 警告: リモート HEAD は存在しない参照元を参照しているため、チェックアウトできません。
-
[解決済み] git initを2回実行すると、リポジトリが初期化されますか?それとも既存のリポジトリを再初期化しますか?
-
[解決済み] fatal: bad revision "とはどういう意味ですか?
-
[解決済み] 新しいBitbucketでリポジトリを削除するにはどうすればよいですか?
-
[解決済み] Git作者不明