In a nutshell Windows Vista and Win7 have a normal feature called the VirtualStore folder which redirects certain WRITE operations to a location not intended by the application. If that application or another then attempts to read the data directly from the folder where it was supposed to be, it will either find the file missing or else find an older version of the file created by a different process.
Many users of Win7 are unaware of this "feature" and could eventually end up making commits that become "lost" or changing git configs only to find them wrong later (I found the file "/git/etc/gitconfig" in my "VirtualStore" and in my "Program Files" folders and they did *not* match).
A workflow procedure needs to be developed and documented to prevent users from accidentally or unknowingly becoming victims of this Microsoft "feature".
The discussion thread here really spells out why this is bad when you are dealing with any kind of distributed database systems (which is one way to think of git) ... look for the comment about half-way down the 1st page that starts with:
It is a feature which YOU don't understand or which you are not WILLING to understand.
"A programmer is just a tool which converts caffeine into code"
CLIP- Stellvertreter http://www.winvistaside.de/Thank you for your useless opinion. Typical response from some one who thinks they understand the situation better than the person asking the question that you find on every forum on the internet. I did not ask for your opinion of my understanding, nor your opinion of why virtual store is good or even how it works, I simply wanted to know how to stop it from working as perfectly as you seem to think it does.
I COMPLETELY understand this "feature". It's Microsoft attempt at a multi-user environment, it's their attempt to protect program and system files from malicious code and incompetent users. Despite this and Microsoft best efforts, the bumbling morons we refer to as users, still manage to render equipment completely inoperable. Unfortunately I must support systems and customers that require live database files to be edited and not duplicated elsewhere. ...
Comments
Comment #1
CJack CreditAttribution: CJack commentedThis same problem can affect any "system emulators" or "emulated linux applications" which bypass normal windows file management ... case in point being the Oracle VirtualBox VM system which "lost" a 1.4 GIGABYTE file into the VirtualStore folder using the "VBoxManage clonehd" process.
Comment #2
eliza411 CreditAttribution: eliza411 commentedI invite you to create a page as a child of Troubleshooting Git to document this, even if you haven't worked out a procedure for solving the issue. Once solutions are proposed, they can be folded in.
Comment #3
eliza411 CreditAttribution: eliza411 commentedI'm going to try moving this to the Documentation queue to see if we get any takers on writing the docs. I really think it's unlikely that anyone else understands the issue well enough to take it on, though.
Comment #4
mjohnq3 CreditAttribution: mjohnq3 commentedI added some documentation under Troubleshooting Git (http://drupal.org/node/1161522) concerning this issue.
Comment #5
eliza411 CreditAttribution: eliza411 commentedAnd look at me be wrong :) Thanks mjohnq3, your addition looks great.
Comment #6
mjohnq3 CreditAttribution: mjohnq3 commentedMelissa, Thanks so much... and you're very welcome.