Reputation: 123
We have some invalid emails in our git Bitbucket repositories that we are unable to import to TFS server as we get an error.
It looks like with git 2.6 we can turn off the fsck check functionality to allow us to get the repos in https://blog.github.com/2015-09-29-git-2-6-including-flexible-fsck-and-improved-status/
However does anyone know which version of git TFS uses? Or how this might be done?
We've tried fixing our repo histories but it would break all connections to our submodule, which isn't really acceptable for us.
Any advice greatly appreciated!
Upvotes: 1
Views: 1229
Reputation: 78813
It doesn't; Team Foundation Server (and Visual Studio Team Services) use a mix of libgit2 and a custom Git implementation. Since they store git repositories in SQL Server (and SQL Azure), they cannot use the reference implementation of Git, which can only operate on on-disk repositories.
TFS (and VSTS), like most Git hosting providers, perform a repository integrity check (git fsck
, or its equivalent) when you push a repository. This ensures that you aren't pushing a damaged repository, or propagating problems to other users.
Note that this is actually orthogonal to changes that you've pointed out. Those new settings affect how fsck
behaves; whether to fsck
or not is configured by the receive.fsckobjects
configuration setting. This is moot in any case, since TFS (and VSTS) does not use the reference implementation of git.
There is no way to disable this behavior in TFS (and VSTS) at present.
Upvotes: 1