-
-
Notifications
You must be signed in to change notification settings - Fork 336
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
handle write-collisions and permissions #821
Conversation
…ymore. (#819) It's solved by special-casing windows and assume that certain kinds of filesystem errors are the result of a collision (with some degree of concurrency/contention).
This makes the API more symmetric as similar methods exist for commits and trees.
Not breaking as it can't be used anyway.
That way we safe expensive IO at the cost of some CPU.
…`git`. Note that the current implementation lacks all of the sophistication that git applies, and doing this properly definitely takes more work as we would need to support `core.sharedRepository`. Further, our tempfile implementation doesn't allow the setup of file modes right when it matters, so that could mean quite some work to either workaround or contribute.
Permissions are quite complex in detail, but are now fixed to the point where they look similar to what git produces with default settings. On the bright side, |
Thanks, @Byron. This is great! I really appreciate it. |
I really appreciate it too :) - when investigating this issue I noticed a lot of Please note that the implementation might well be slower now as the additional |
Tasks
git
does after creating new loose objectsFixes #819