Thread (3 messages) 3 messages, 3 authors, 2022-07-23

RE: Dropbox and "Your local changes to the following files would be overwritten by merge"

From: <hidden>
Date: 2022-07-23 13:20:31

On July 23, 2022 8:40 AM, Yuri Kanivetsky wrote:
I've started to run into issues with git relatively recently. Let's take the issue I'm
experiencing at the moment. I'm trying to rewrite a history (git rebase -i some-
hash, move 4 commits up, rename the last 2 of them), and it fails to apply the next
commit on the todo list after these 4 (I've redacted the message):

[detached HEAD 1888888] name-3
Date: Mon May 9 22:41:03 2022 +0300
1 file changed, 1 insertion(+)
[detached HEAD 00b5555] name-4
Date: Sat Jul 23 13:19:42 2022 +0300
1 file changed, 1 insertion(+)
error: Your local changes to the following files would be overwritten by merge:
       some paths
Please commit your changes or stash them before you merge.
Aborting
hint: Could not execute the todo command
hint:
hint:     pick 8222222222222222222222222222222222222222 name-5
hint:
hint: It has been rescheduled; To edit the command before continuing, please
hint: edit the todo list first:
hint:
hint:     git rebase --edit-todo
hint:     git rebase --continue
Could not apply 8222222... name-5

The files it complains about, they're versioned, and they're not changed when it
stops. If I copy the repository (cp -r), and repeat the steps, it sometimes succeeds,
sometimes not. If I were to split it into smaller steps I believe it would succeed. In
other words I got this message occasionally for no apparent reason. Usually it
succeeds if I simply repeat the steps. Sometimes I need to do it in smaller steps.

First I thought it's an issue with vim-fugitive, but I can reproduce it with git alone.
The other culprits I can think of are magit (I believe I used it with this repository),
vim, and now that I think about it... Dropbox? The repository is in a dropbox
directory. I understand that this is uncommon, but a couple of my repositories are
in a dropbox directory and I'd like to put the reasons aside. Can you suggest what I
can do to find the reason it fails? Do you know what exactly triggers this message
(the content changed, modification time, ctime)?

I'm running Alpine Linux and git-2.36.1.
Is DropBox 100% up to date when the operation is run? It uses timestamps to determine whether files changed. Git uses SHA1. So, they each have a different perspective on what is changed. A git status before the operation would tell you what is modified prior to the merge, which could be something DropBox is updating or is pending an update. You could try to do a git stash push prior to the merge and then a git stash pop to isolate whatever DropBox is doing at the time.
--Randall
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help