jzoss / Git-Source-Control-Provider

Git Source Control Provider is a visual studio plug-in that integrates Git with visual studio solution explorer.
https://github.com/jzoss/Git-Source-Control-Provider
GNU General Public License v2.0
78 stars 26 forks source link

LibGit2Sharp upgrade??? #110

Closed jbestrom closed 5 years ago

jbestrom commented 5 years ago

Is there a reason why this doesn't use a nuget package for LibGit2Sharp?

I have been experiencing some VS crashes and it is only when I have this extension installed. I have tracked it down to possibly being something like this issue https://github.com/github/VisualStudio/pull/1337.

In looking at the extension code looks like there could be a couple places where the GC issue is happening.

It is tough to reproduce as it randomly happens when closing VS.

I was going to locally update LibGit2Sharp but wanted to know if there was a specific reason to have the DLL an ref that instead of a nuget package ref?

Thanks

jzoss commented 5 years ago

Yes there is a reason to not use the nuget version.. And it's aggravating. Here is a link https://github.com/libgit2/libgit2sharp/issues/212

Anyway basically because of the way VS loads extensions, the LibGIT2Sharp have to be strongly named because if a different extension also uses LibGIT2Sharp and it's slightly different version then it causes exceptions..

Anyway so what you have to do is get the latest DLL.. and then sign it, It's annoying and I hate it.. If you are having issues, I can do a new build when I get some time.. out you can do pull request.. Anyway that's why I can't use nuget

jzoss commented 5 years ago

Oh and sometimes I'm smart.. I wrote down how to upgrade the dang thing .. https://github.com/jzoss/Git-Source-Control-Provider/blob/master/_LibGit2Sharp/ProcessForUpdatingLibGit2Sharp.txt

jzoss commented 5 years ago

@jbestrom I decided to be cool and now there is a new dev release .. https://github.com/jzoss/Git-Source-Control-Provider/releases/tag/GSCP-CI

I have not tested it yet.. tell me if it helps.

jbestrom commented 5 years ago

Thanks. I 'll take a look at let you know.

I did notice in GitRepository.cs there are a few places where it does the GetRepository() call as mentioned in the link I posted. I wonder if that might need to be fixed also? If I get some time next week I'll dig into that a big more.

jzoss commented 5 years ago

@jbestrom - Did you ever take a look at the GitRepository.cs ?

jbestrom commented 5 years ago

@jzoss I haven't yet looked at it however with that last fix you made to upgrade LibGit my VS is crashing a lot less and has moved on to other issue.

The biggest issue is the size of the code base I work in. GitSCC was just the first thing it would complain about so I looked into that first and it seems to have moved to other areas of VS or extensions.

Thanks for updating LibGit