Gitリベースが失敗し、「次のファイルに対するローカルの変更がマージによって上書きされます」。ローカルの変更はありませんか?


104

これは、バグ修正ブランチを自分のマスターブランチにマージして上流にプッシュする準備をしようとしたときの筆記録です。バグ修正ブランチが作成されて以来、マスターに組み込まれた上流の変更がいくつかあり、現在はリベースを拒否しています。

エラーをスローするファイルは、開いたときに比較されません。ファイルが追加、削除、または名前変更されていません。何も無視されず、追跡もステージングもステージングも解除されません。なぜリベースが失敗するのか私は完全に困惑しています。

私はOS X 10.6.6とgit 1.7.4を使っています

.-(/Volumes/joshua/www/txfunds)-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------(joshua@Kusanagi)-
`--> git rebase bug586-test master-test
First, rewinding head to replay your work on top of it...
Applying: - comiitting code related to api permissions
Using index info to reconstruct a base tree...
Falling back to patching base and 3-way merge...
error: Your local changes to the following files would be overwritten by merge:
    inc/data.inc
    templates/apipermissions_tpl.inc
    templates/currencies_tpl.inc
Please, commit your changes or stash them before you can merge.
Aborting
Failed to merge in the changes.
Patch failed at 0001 - comiitting code related to api permissions

When you have resolved this problem run "git rebase --continue".
If you would prefer to skip this patch, instead run "git rebase --skip".
To restore the original branch and stop rebasing run "git rebase --abort".



.-(/Volumes/joshua/www/txfunds)-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------(joshua@Kusanagi)-
`--> git status
# Not currently on any branch.
nothing to commit (working directory clean)



.-(/Volumes/joshua/www/txfunds)-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------(joshua@Kusanagi)-
`--> git rebase --abort
HEAD is now at 5efccf1 - comiitting code related to api permissions



.-(/Volumes/joshua/www/txfunds)-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------(joshua@Kusanagi)-
`--> git log -n10 --oneline
5efccf1 - comiitting code related to api permissions
a8a5ee4 Style changes for IE
cfca618 Style changes for IE
8a69de6 Style changes for IE
8946585 - comiitting code related to api permissions - fixed an html error in the currencies template
5fba0a9 Merges the 1.11b branch bugfixes and changes into trunk
ef57049 Andrew Commiting on Blakes behalf on changes he made to transfers; Also an Indue GW balance fix; debitcarupload fix for LSN
69e4313 Fixed an issue with Support From email
9058fb6 Sets the svn property svn:eol-style to LF, to enforce unix style line endings
240839e Fixes up a lot of the whitespace issues.



.-(/Volumes/joshua/www/txfunds)-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------(joshua@Kusanagi)-
`--> git checkout bug586-test 
Switched to branch 'bug586-test'



.-(/Volumes/joshua/www/txfunds)-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------(joshua@Kusanagi)-
`--> git log -n10 --oneline  
b7b1f8a Resolves #586, Postback on deposit
5fba0a9 Merges the 1.11b branch bugfixes and changes into trunk
ef57049 Andrew Commiting on Blakes behalf on changes he made to transfers; Also an Indue GW balance fix; debitcarupload fix for LSN
69e4313 Fixed an issue with Support From email
9058fb6 Sets the svn property svn:eol-style to LF, to enforce unix style line endings
240839e Fixes up a lot of the whitespace issues.
cf27b6f - bug that came up with transferring. The transfer page had a hidden field called to, which was taking precedence over cards and usercard which would throw the system out a bit
7c21a81 Fixes #603, new add transaction form, journalled.
01e6292 Removes a pile of resource forks
880c5bc - bug that came up with transferring. The transfer page had a hidden field called to, which was taking precedence over cards and usercard which would throw the system out a bit



.-(/Volumes/joshua/www/txfunds)-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------(joshua@Kusanagi)-
`--> git rebase master-test bug586-test
First, rewinding head to replay your work on top of it...
Applying: Resolves #586, Postback on deposit
Using index info to reconstruct a base tree...
<stdin>:52: trailing whitespace.
                'name' => 'Invoice Transfer Out', 
<stdin>:175: trailing whitespace.

warning: 2 lines add whitespace errors.
Falling back to patching base and 3-way merge...
error: Your local changes to the following files would be overwritten by merge:
    templates/deposit_tpl.inc
Please, commit your changes or stash them before you can merge.
Aborting
Failed to merge in the changes.
Patch failed at 0001 Resolves #586, Postback on deposit

When you have resolved this problem run "git rebase --continue".
If you would prefer to skip this patch, instead run "git rebase --skip".
To restore the original branch and stop rebasing run "git rebase --abort".



.-(/Volumes/joshua/www/txfunds)-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------(joshua@Kusanagi)-
`--> git rebase --abort
HEAD is now at b7b1f8a Resolves #586, Postback on deposit

gitステータスの内容、gitignoreの内容、およびlsを問題のディレクトリに個別に投稿する必要があります。これにより、読みやすくなります。それは、少なくともいくつかを助けるかもしれません。
Kzqai

crlf設定などはありますか?リベースはそのような汚い作業ツリーを作成するべきではありません。そして、git statusそれが役立つかもしれないのは、リベースが失敗したときです。ダーティツリーでの実行を拒否します。あなたが始める前にそれがきれいであることを私たちは知っています。それはそこに状況だある問題を引き起こしているローカルでの変更が。
Cascabel

git rebaseのパラメーターの順序について確信がありますか?最初の参照はリベースする参照であり、オプションの2番目の参照は最初にチェックアウトされる参照です。多分あなたはそれらを交換する必要があります。
Laurent Pireyn

回答:


191

これは私の問題のもう1つの質問と同じ問題です。

私はMacを使用していますが、このあいまいな設定変更により、ステージングされていない変更に関する問題がすべて解決されたようです。

git config --global core.trustctime false

Windowsファイル時間、Linuxファイル時間、Macファイル時間の違いに関係していると思います。知っている人は、コメントしてください。

更新:このブログ投稿では、何が起こっているのかについて説明しています。


1
ありがとう!私はこれを理解できなかったでしょう。
Christopher Pickslay

1
ここクリスも同じです-これが私にとって何がうまくいったのか、私は間違いなく知りたいのです。
karlbecker_com

残念ながら、これは私にはうまくいきませんでした。Xitを終了すると、Gitが不平を言ったファイルがプロジェクトになかったとしても、役に立ちました。
アンコモン

1
私はgit-svnを使用して別のタイムゾーンのSuSE svnサーバーにコミットするSuSEにいます。説明が何であれ、これは私にとっても問題を解決しました。
ジョナサンハートレイ

5
原因は次のとおりですgit-tower.com/blog/make-git-rebase-safe-on-osx/#!改訂されたバックグラウンドプロセスと関係があるようです。
schmunk 2013年

48

Joshua Hogendornの回答に関して:gitでリポジトリを操作しているときにXcodeを開いたままにしておくと、これらの問題が発生するようです。それは、gitが隠していた(そしてその後もまだ)と思った何かをコミットしたという状況にさえ至りましたが、Xcodeはリベース中にファイルシステムに書き込んだだけです。

安全を確保したい場合は、gitでリポジトリを操作する前にXcodeプロジェクトを閉じてください。そうすれば、おそらくcore.trustctime false設定は必要ありません。


おそらく、IDEで何らかの「N分ごとにファイルを自動的に保存する」設定をアクティブにしていましたか?やめてください。
Mikko Rantalainen 2013

4
私が試してみました…そして私のために働きました!リベースを行う前にxcodeを閉じます。多くの時間を無駄に無駄にしないでください。よろしくお願いします!
Nicolas Lauquin、2013年

Aptana Studio 3を使用していますが、上記と同じエラーが発生しました。Aptanaを終了すると、リベースが機能しました。数日前にAptanaのgit統合をオフにしました。実際にはオフになっていないか、Aptanaを再起動する必要がありました。
Bill Hoag 14年

3
Visual Studio 2013でプロジェクトを開いたときにも同じ問題が発生しました。プロジェクトを閉じると問題が解決しました。
Mohammad Dehghan

3
より一般的には、これはリベース中にファイルがロックされる問題のようです。私にとってそれはwebpack --watch走っていました。
Marc Stober
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.