-
Notifications
You must be signed in to change notification settings - Fork 451
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
Update Git to include tracing and fix for untracked files #373
Update Git to include tracing and fix for untracked files #373
Conversation
ffe714a
to
c3f03f8
Compare
{ | ||
Thread.Sleep(500); | ||
} | ||
while (this.fileSystem.FileExists(postFetchLock) && ++timeoutCount < 100); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This may resolve the blocked tests (however, it will result in a failure if this is the reason the functional tests get stuck on mac)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am running the tests on my Mac now to see where they hang. I don't think it's this test though, as this entire fixture is marked [Category(Categories.MacTODO.M4)]
and so it should not be running on Mac.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It looks like the hang is due to the VFS4G lock not being released when git rebase
completes. On my machine I see that git rebase
acquired the lock, but I don't see it being released and git status
is stuck in GVFS.Hooks pre-command waiting on the lock.
{ | ||
Thread.Sleep(500); | ||
} | ||
while (this.fileSystem.FileExists(postFetchLock) && ++timeoutCount < 100); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am running the tests on my Mac now to see where they hang. I don't think it's this test though, as this entire fixture is marked [Category(Categories.MacTODO.M4)]
and so it should not be running on Mac.
do | ||
{ | ||
Thread.Sleep(500); | ||
} | ||
while (this.fileSystem.FileExists(postFetchLock)); | ||
while (this.fileSystem.FileExists(postFetchLock) && ++timeoutCount < 100); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same comment here, I don't think this is the hang on Mac because this method is only called by PrefetchCleansUpStalePrefetchLock
which is not currently running on Mac. These aren't running as the lock files are not deleted on Mac (by design):
// TODO(Mac): Handle that lock files are not deleted on Mac, they are simply unlocked
946b944
to
95c5989
Compare
@jrbriggs @wilbaker @kewillford It looks like our issue with the Mac functional tests is that the way the builtin rebase and stash execute the old script version. I currently pointed this PR at a build after reverting all of the experimental builtin rebase/stash. The only thing I can think to do if we want to salvage the builtin rebase/stash is to force the builtin on for GVFS repos. However, if we find a problem in the wild, then a user can't turn it off (on the Mac). The thing we should do in the meantime is create more Git tests for post-command hooks related to stash and rebase, and possibly specifically in their error cases. |
95c5989
to
7a6cc61
Compare
7a6cc61
to
ed46b0e
Compare
The latest push includes the release-ready build of Git for Windows 2.19 with the rebase fix. |
Update the package for GitForWindows to include tracing information.
Includes the following Git PRs:
sane_execvp
ingit rebase
andgit stash
This also includes VFS for Git updates from Kevin Willford's work:
Fix missing untracked files when created in subfolder
Add to the test to create multiple level of folders and files in those folder to make sure they show up as untracked files.
Update the git for windows version that has the fix.
Fixes #358