Skip to content
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

Merged
merged 5 commits into from
Oct 12, 2018

Conversation

derrickstolee
Copy link
Contributor

@derrickstolee derrickstolee commented Oct 11, 2018

Update the package for GitForWindows to include tracing information.

Includes the following Git PRs:

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

{
Thread.Sleep(500);
}
while (this.fileSystem.FileExists(postFetchLock) && ++timeoutCount < 100);
Copy link
Contributor Author

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)

Copy link
Member

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.

Copy link
Member

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);
Copy link
Member

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);
Copy link
Member

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

@derrickstolee
Copy link
Contributor Author

@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.

@derrickstolee
Copy link
Contributor Author

The latest push includes the release-ready build of Git for Windows 2.19 with the rebase fix.

@sanoursa sanoursa changed the title Update GitForWindows to include tracing Update GitForWindows to include tracing and fix for untracked files Oct 12, 2018
@sanoursa sanoursa changed the title Update GitForWindows to include tracing and fix for untracked files Update Git to include tracing and fix for untracked files Oct 12, 2018
@derrickstolee derrickstolee merged commit 51de92b into microsoft:master Oct 12, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

git status does not report untracked files that are more than one folder deep
3 participants