web-dev-qa-db-ja.com

競合のため「git stash pop」を実行できません

ローカルgitリポジトリがあり、いくつかの変更されたファイルがありました。それから私は何かのための修正をすばやく作成する必要があったので、私は

  • 変更を隠しました(git stash)
  • 編集されたファイル(viファイル)
  • コミット(git commit)
  • ポップされたスタッシュ(git stash pop)

これは紛争を引き起こしました。

# On branch master
$ git stash pop
Auto-merging page/search.php
CONFLICT (content): Merge conflict in page/search.php
$ git status
# On branch master
# Unmerged paths:
#   (use "git reset HEAD <file>..." to unstage)
#   (use "git add/rm <file>..." as appropriate to mark resolution)
#
#   both modified:      page/search.php

変更をクリーンアップしてstashを再適用しようとすると、同じことが起こります(競合)。私はpage/search.phpをあまり気にしませんが、他のファイルをスタッシュから取り出したいのですが。

Stashをパッチに変換する方法、または単にstashされたときのようにファイルを取得する方法はありますか?

19
romaninsh

Stashはすでに他のファイルに適用されています。それだけです page/search.php手動でマージする必要があります。その後、単にgit reset変更を段階的に解除してハッキングを続ける–またはgit add ...とコミット。

20
user1686

で解決:

git stash show -p
12
romaninsh

後に git stash popコマンド、競合を手動で解決してからgit stash drop手動でman git-stash提案します。

7
westoque