Hello. I seem to be doing something wrong - that has previously caused me to loose data (well, not really, the commit was still there, but it took me a while to notice - gotta love the non-destructive nature of git) I have a project that contains a file that, irritatingly, an IDE will always re-format on save, even if there are no changes. So, I use a clean and smudge filter to re-order it into a sane format that's easier to detect if there have actually been changes. So far, so good. But, not everyone always uses this filter, and I get some unexpected behavior when doing a 'git rebase'. For example - the repository starts with a commit that has been sanely-ordered. I make a change of several files, and commit locally - but when I come to push, I find that origin/master has moved. No worries, I do git fetch git rebase origin/master Now I see the usual text going past, and including: .... error: realtime/modules/realtime-flex-components/.flexLibProperties: does not match index Using index info to reconstruct a base tree... <stdin>:59: trailing whitespace. <stdin>:81: trailing whitespace. <stdin>:83: trailing whitespace. parameters:[ <stdin>:98: space before tab in indent. if (item.value == null ) <stdin>:99: space before tab in indent. { warning: squelched 214 whitespace errors warning: 219 lines add whitespace errors. Falling back to patching base and 3-way merge... error: Entry 'realtime/modules/realtime-flex-components/.flexLibProperties' not uptodate. Cannot merge. fatal: merging of trees 85b26f7c165c2a9d362340187b79527428b650e8 and 3ab3078b55e17dcb1f3f4c8e6a65eff517eedb92 failed Failed to merge in the changes. Patch failed at 0001 More KPI/Report work 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". OK - looking a bit closer, someone committed .flexLibProperties without the filter. I guess that's the "does not match index". Let's merge.. (|REBASE) $ git mergetool No files need merging Interesting - I guess there were no conflicts when the filtering was all done. Let's just look at the status.. (|REBASE) $ git status # Not currently on any branch. # Changed but not updated: # (use "git add <file>..." to update what will be committed) # (use "git checkout -- <file>..." to discard changes in working directory) # # modified: realtime/modules/realtime-flex-components/.flexLibProperties Eek... Where's the rest of my files?! My guess is that the "error" reported further up ought to terminate the rebase without giving me the "When you have resolved this problem run "git rebase --continue" because otherwise I end up loosing the majority of the changes in my rebased commit.. ? -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html