git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: rebase: strange failures to apply patc 3-way

From
Max Horn <max@quendi.de>
Date
Mar 10, 2013, 13:22 UTC
Message-ID
<C79E1B20-2C42-49FF-A964-285A7049FDED@quendi.de>
In-Reply-To
<513B8037.7060107@gmail.com>
Sorry for taking so long to reply... :-/
On 09.03.2013, at 19:32, Andrew Wong wrote:
Show 20 quoted lines
> On 03/09/13 06:26, Max Horn wrote:
>> It tends to fail in separate places, but eventually "stabilizes". E.g. I just did a couple test rebases, and it failed twice in commit 14, then the third time in commit 15 (which underlines once more that the failures are inappropriate).
>> 
>> The fourth time, something new and weird happened:
>> 
>> $ git rebase --abort
>> $ git rebase NEW-PARENT 
>> Cannot rebase: You have unstaged changes.
>> Please commit or stash them.
>> $
>> 
>> This is quite suspicious. It appears that git for some reason things a file is dirty when it isn't. That could explain the other rebase failures too, couldn't it? But what might cause such a thing?
> Yea, that's really suspicious. This could mean there's an issue with
> when git is checking the index. Try running these a couple times in a
> clean work tree:
>    $ git update-index --refresh
>    $ git diff-files
> 
> In a clean work tree, these commands should print nothing. But in your
> case, these might print random files that git thinks have been modified...
I did run
  touch lib/*.* src/*.* && git update-index --refresh && git diff-files
a couple dozen times (the "problematic" files where in src/ and lib), but nothing happened. I just re-checked, and the rebase still fails in the same why...
Perhaps I should add some printfs into the git source to figure out what exactly it thinks is not right about those files... i.e. how does it come to the conclusion that I have local changes, exactly. I don't know how Git does that -- does it take the mtime from (l)stat into account? Perhaps problems with my machine's clock could be responsible?
Show 7 quoted lines
> 
> If the commands do print out some files, check the timestamp from the
> git index and the filesystem:
>    $ git ls-files --debug file1 file2
>    $ stat -f "%N %m %c" file1 file2
> 
> Is this repo on a network drive? Or is it local drive in your Mac?
Local (some more details also described in my first email on this thread, but I'll happily provide more data if I can).

Thanks again, Max

Previous: Andrew WongNext: Andrew Wong
Message 11 of 27 in “rebase: strange failures to apply patc 3-way”
  1. Max HornMar 7, 2013
  2. Max HornMar 8, 2013
  3. Andrew WongMar 8, 2013
  4. Max HornMar 8, 2013
  5. Andrew WongMar 8, 2013
  6. Max HornMar 8, 2013
  7. Andrew WongMar 8, 2013
  8. Max HornMar 9, 2013
  9. Andrew WongMar 9, 2013
  10. Andrew WongMar 9, 2013
  11. Max HornMar 10, 2013
  12. Andrew WongMar 11, 2013
  13. Max HornMar 11, 2013
  14. Andrew WongMar 11, 2013
  15. Max HornMar 11, 2013
  16. Max HornMar 11, 2013
  17. Andrew WongMar 11, 2013
  18. Max HornMar 11, 2013
  19. Andrew WongMar 11, 2013
  20. Max HornMar 12, 2013
  21. Max HornMar 12, 2013
  22. John SzakmeisterMar 12, 2013
  23. Andrew WongMar 12, 2013
  24. Jeff KingMar 12, 2013
  25. Andrew WongMar 12, 2013
  26. Jeff KingMar 12, 2013
  27. Heiko VoigtMar 12, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.