5

アップストリームブランチをトピックブランチにリベースしようとすると問題が発生します。ワークフローは次のようになります。

git checkout upstream
git pull origin upstream
git checkout topic
git rebase upstream

結果は次のようになります。

First, rewinding head to replay your work on top of it...
Applying Refactored database access and added logging
error: patch failed: path/to/file1.ext:21
error: path/to/file1.ext: patch does not apply
error: path/to/file2.ext:3
error: path/to/file2.ext: patch does not apply
fatal: mode change for path/to/file3.ext, which is not in current HEAD
Repository lacks necessary blobs to fall back on 3-way merge.
Cannot fall back to three-way merge.
Patch failed at 0001.

それは昨日私に起こりました、そして私は私の研究をしました、そして何も見つけませんでした、それで結局私はgit merge upstream代わりに使用しました、git rebase upstreamそして物事はうまくいきました。本当の問題は、エラーが今日も表示されることです。昨日のマージにより、すでにアップストリームと同期しています。また、昨日からチームメイトから紹介されたファイルは変更していません。

私のGitバージョンは1.5.6.5です(そして、このマシンでそれを更新する気はありません。望ましくない結果を恐れています)。

4

2 に答える 2

10

--mergeこのような場合、オプションを使用したリベースが役立つことがわかりました。(それでもGitはリベースを行います。)

于 2010-08-11T09:51:31.857 に答える
0

私も同じことをしましたが、メッセージに差分が含まれているコミットメッセージが原因であることが判明しました。

たぶん試してみてください:git log --grep ++

...それがそれであるかどうかを確認してください..

于 2013-02-11T20:06:43.187 に答える