{"action":"created","issue":{"url":"https://api.github.com/repos/git-tfs/git-tfs/issues/750","labels_url":"https://api.github.com/repos/git-tfs/git-tfs/issues/750/labels{/name}","comments_url":"https://api.github.com/repos/git-tfs/git-tfs/issues/750/comments","events_url":"https://api.github.com/repos/git-tfs/git-tfs/issues/750/events","html_url":"https://github.com/git-tfs/git-tfs/issues/750","id":68159071,"number":750,"title":"Include libgit2sharp as NuGet-package instead of git submodule","user":{"login":"allansson","id":2014167,"avatar_url":"https://avatars.githubusercontent.com/u/2014167?v=3","gravatar_id":"","url":"https://api.github.com/users/allansson","html_url":"https://github.com/allansson","followers_url":"https://api.github.com/users/allansson/followers","following_url":"https://api.github.com/users/allansson/following{/other_user}","gists_url":"https://api.github.com/users/allansson/gists{/gist_id}","starred_url":"https://api.github.com/users/allansson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/allansson/subscriptions","organizations_url":"https://api.github.com/users/allansson/orgs","repos_url":"https://api.github.com/users/allansson/repos","events_url":"https://api.github.com/users/allansson/events{/privacy}","received_events_url":"https://api.github.com/users/allansson/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2015-04-13T18:09:28Z","updated_at":"2015-04-13T20:52:45Z","closed_at":null,"body":"I'm wondering if there is any particular reason that libgit2sharp is included as a git submodule instead of as a NuGet-dependency? There is an offical NuGet-package here: http://www.nuget.org/packages/LibGit2Sharp\r\n\r\nI've encountered at least one issue with using a git submodule: in Visual Studio 2013, building the project after having run the test suite will fail because vstest.executionengine.exe won't release the binaries and the xcopy build event will fail because it can't overwrite the NativeBinaries-folder (see #697).\r\n\r\nBy instead using the NuGet-package, we could avoid:\r\n\r\n1. The need to run `git submodule update --init` before being able to build the solution.\r\n2. Using custom build steps in both GitTfs and GitTfsTest\r\n\r\nI've tried using the NuGet-package locally and the switch is painless. The NuGet-reference just needs to be added to GitTfs and GitTfsTest projects. It also fixes the issue described above.\r\n\r\nI can create a pull-request, if others think this would be a good idea."},"comment":{"url":"https://api.github.com/repos/git-tfs/git-tfs/issues/comments/92494811","html_url":"https://github.com/git-tfs/git-tfs/issues/750#issuecomment-92494811","issue_url":"https://api.github.com/repos/git-tfs/git-tfs/issues/750","id":92494811,"user":{"login":"allansson","id":2014167,"avatar_url":"https://avatars.githubusercontent.com/u/2014167?v=3","gravatar_id":"","url":"https://api.github.com/users/allansson","html_url":"https://github.com/allansson","followers_url":"https://api.github.com/users/allansson/followers","following_url":"https://api.github.com/users/allansson/following{/other_user}","gists_url":"https://api.github.com/users/allansson/gists{/gist_id}","starred_url":"https://api.github.com/users/allansson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/allansson/subscriptions","organizations_url":"https://api.github.com/users/allansson/orgs","repos_url":"https://api.github.com/users/allansson/repos","events_url":"https://api.github.com/users/allansson/events{/privacy}","received_events_url":"https://api.github.com/users/allansson/received_events","type":"User","site_admin":false},"created_at":"2015-04-13T20:52:44Z","updated_at":"2015-04-13T20:52:44Z","body":"> But, do you think that we could find a way to use the nuget package for the\r\n> new release to come but still use the submodule to be able to build the old\r\n> version (at least for quite some time for transition...)?\r\n\r\nHere's what I have gathered about building releases from looking at the files in the repository:\r\n\r\n1. There is a very old Rakefile, which I assume is not being used anymore?\r\n2. There is a Travis build script which builds the libgit2sharp submodule and then builds the MSBuild-file \"CI.proj\".\r\n3. There is the Release.proj (MSBuild) which is used to publish a new release of the library.\r\n\r\nThere seems to be no logic to build specific version in any of these files (from a quick scan... my Ruby is a little rusty). I'm thinking that building a specific version would mean checking out a specific tag and the building the code from that commit.\r\n\r\nIf this is the case, then wouldn't the checked out version still include the submodule and still build with it?"}}