Visual Studio Tools for Git


An extension for Team Explorer to provide source control integration for Git. Enables integration with local Git repositories and provides tools to work with remote repositories.

(174) Review
Visual Studio
Download (416,920)
E-mail Twitter Digg Facebook
Add to favorites
Reviews (174)
Q and A (263)
Sign in to write a review
Sort by:

by ActuallyStryder | October 29 2015

It works, but it so cumbersome that I would rather just switch to the command line. Nothing is laid out well, everything is difficult to access. A lack of effective short-cuts/keyboard navigation means committing code takes longer than it should. No project tracking means I have to manually select each thing to add. They should look to more effective Git integration such as what's available with IntelliJ for an example of how to 'stay out of the developers way'.

by gregory_may | October 19 2015

by Leperous | October 13 2015

Absolutely dreadful Git implementation. Often differs to what the CLI tool says and doesn't stay in sync with anything performed there, often misses files from the "included changes" list, still doesn't support SSH.

by MoyHajjat | September 24 2015

Love it!

by Lucas Mendes Pereira | August 17 2015

by cporter711 | July 03 2015

by Jeff Mounce | June 23 2015

Conflicts with R# in VS2012.
Feature set is limited. Overall, it is buggy and not well designed.

Never used it in VS2013.

by George Heynen | April 27 2015

Works great. I have had no problems using with VS 2012 and database project via Microsoft SQL Server Data Tools. To answer below, VS 2013 GIT integration is built into the product.

by James_Parsons | April 16 2015

No VS 2013 support :(

by Stewa11 | April 09 2015

An error occurred. Detailed message: Failed to inflate packfile
This error has been reported and supposed to have been fixed. I am using VS2013.5.5 and the error is still present.

by testeewweqtergerwg | March 25 2015


I am receiving a error

An error occurred. Detailed message: An error was raised by libgit2. Category = Net (Error).
Response status code does not indicate success: 301 (Moved Permanently).

Why this is happening?

by mihai.cucicea | March 24 2015


by JonasT | March 11 2015

I find the "Visual Studio Tools for GIT" confusing and not well organized. Also the integration lacks a lot of the important features which GIT supports (amend, interactive rebase etc.).

Instead Visual Studio Tools for Git should abandon the TFS look and go all in with GIT, so we get a userexperience like Sourcetree or "thg".

Mostly I just use these tools to highlight which files a have modified or created...

by K Dahl | February 23 2015

Doesn't support SQL Server Development Tools version of Visual Studio 2012.

by Dmitry.Novoselov | January 08 2015

It works. And it has a tight integration with VS.
In overal, it covers my needs completely and looks nice. So why not like it?

by dandrews216 | January 05 2015

by GalayM | November 03 2014

Very lacking icons on folders (as in VisualSVN)

by Rafael Pacheco | September 12 2014

Suggestions: This tool should have the Branch/Merge tree visualizer.

And also, GitFlow support.

by AbdElRaheim | September 06 2014

slow, buggy, does some crazy disk i/o that slows down my entire computer, ** in ignore doesnt work, vs get hung in this git2-msvstfs.dll!_git_graph_ahead_behind method for over 10 minutes sometimes at startup, visual studio stays running even after close now and it causes visual studio to lock up all the time. I get these weird cannot stat file errors where I need to go and physical delete a file in bin folder generated by the build. Also the Add icon looks almost exactly the same as the unmodified icon. Wouldnt recommend.

Yesterday after working for couple hours taskman showed 100s of gbs of read i/o. The issue resolved it self after I deleted a file in test results folder that was locked by sql server. After that I tried to open another solution, after waiting five minutes I just gave up and uninstalled.

I switched to the 3rd party "Git Source Control Provider" with tortoisegit. So it is great, no issues perf issues. Probably wont be checkin anything until monday so will know more by then. All I need is add files and commit in stable way, everything else I do from command line. So if it does that without perf issues then its a 5/5 for me.

by carlos.muentes | August 21 2014

Very, very unstable for me. I constantly have issues committing due to odd 'File In Use' errors, the plugin constantly doesn't add files to git that I've added to my projects and so missed commits happen frequently. Just not ready for prime time.

1 - 20 of 174 Items   
Sign in to start a discussion

  • SYNC Button
    1 Posts | Last post November 18, 2015
    • What exactly does the Sync button do? I have seen that it runs the following commands in this order 1) Fetch 2) Pull 3) Push. I have also seen a merge based on conflict during pull/push occur.
  • Error installing extensiòn on Windows 8.1
    1 Posts | Last post November 17, 2015
    • I get an error when I trying to install on a Windows 8.1, is the only thing that could throw an error. In the same machine a I have VS2015 and VS2013
  • Usability update?
    1 Posts | Last post October 29, 2015
    • Will we ever see one? If the intended behaviour of git is to 'commit often', this tool prevents that. The amount of distraction created by attempting to commit takes the developers focus away from the task at hand. 
  • Usability update?
    1 Posts | Last post October 29, 2015
    • Will we ever see one? If the intended behaviour of git is to 'commit often', this tool prevents that. The amount of distraction created by attempting to commit takes the developers focus away from the task at hand. 
  • Merge Conflicts
    16 Posts | Last post October 22, 2015
    • An error was raised by libgit2. Category = 21 (MergeConflict).
      4 uncommitted changes would be overwritten by merge.
      The error always occur on nearly every project. Everytime I need to remove the whole repository and clone again to solve the problem.
      I even can't revert the changes made in local commit and can't push the changes to the server because only 1 incoming commit stuck.
      I have tried to click fetch, pull, and sync, no one make it works.
      Could anyone help to solve the problem?
      Really appreciate for anyone could help!
    • Calvin, thanks for reporting this.  I'm guessing you see this error when you actually try to perform a merge?  If you've seen this happen to multiple clones of your repo then I am guessing there is something special about your repo that libgit2 doesn't like.  Can you send me an email at taylaf at microsoft dot com so that we can work on getting a repro in house?
    • I also have this problem. It happens EVERY TIME both I and someone else on the team have committed to the master branch. No, I do not do anything, especially not merge (how do I do merge? there's no option for this). I simply click the SYNC button (or Fetch or Pull - these do the same), and I get the error. So far, the only way to get rid of the error is to download a fresh copy of the repository, thereby losing ALL my changes. This is a SHOWSTOPPER.
    • Also the same here! If you have local unsynced commits or changes then you can't sync. (An error was raised by libgit2. Category = 21 (MergeConflict).
      4 uncommitted changes would be overwritten by merge.) If you try to push your changes before pulling there is also a error message. (If it occurs next time i will add the push error message)
      Tis is really an showstopper and we can't start with productive work on our new TFS before this is solved! A real Merge dialog would be nice but a good automatic merge, without destroying the local changes, would be enough for now!
    • I've just hit this issue as well.  We have a brand new tfs-git repo and I've Cloned and done a bunch of commits and syncs.  Someone else just cloned and added new files in a completely different folder, so there's no content level differences which can be diff/merged and no button for it.  Surely I don't need to create a new branch every time someone else pushes a change?  I wouldn't think that would make a difference anyway.
      Anyway, this seems to be a massive problem, so any response would be great. has been over a month since the last post here.
    • I'm having the same problem. Has a fix for this issue been found yet?
    • The GUI seems to be buggy. 
      If I click Pull on Incoming Commits, I get the error referenced above "libgit2. Category = 21 (MergeConflict)...".
      When I open the Git Command Window, then type "Git Pull" it resolves the simple merge and completes. Why are these different?
    • I'm encountering this issue as well.  Has any progress been made on a fix?
    • Same thing is happening here, almost every time I try to pull (from team foundation service) in VS it fails with An error was raised by libgit2. Category = 21 (MergeConflict)..
      Pulling from command line works fine.
    • Same thing here, we can no longer push, pull, or sync...I assume Microsoft would be working on this serious issue or at least get some information out to us so that we can work on a resolution ourselves. This issue literally makes it impossible to use GIT in VS2013.
    • The same thing happened to us.  We believe it was from a series of .gitignore updates by a couple of developers.  When the conflict came up, there wasn't a way to merge it so they were stuck.  Visual studio doesn't seem to see those files from that point of view.  I'm sure there's a way to do it from the command line but since there were minimal other updates, we just re-cloned the repo
    • Any update on this?  This doesn't seem to be resolved...
    • Same problem here ? any update on this ?
    • I am on vs 2013 by the way
    • If you encounter this problem, start the Git UI, cancel the merge and do the merge again in the Git UI. 95% of the merge problems can be solved that way.
      Another solution is using the command line. This is especially true if you have "uncommitted changes" while visual studio shows you none.
      If the git tools are in your path, use powershell or cmd or even the package manager console if you don't want to leave visual studio.
      > git status // gives you an overview of the commit status
      > git add -A // adds uncommitted files to the list of files to be committed
      > git commit -m "some useful comment" // commits the files.
      Try the merge again and if it still fails, do the merge from command line.
      > git merge <branchname> // while being on your own branch
      if you have merge conflicts and visual studio stubbornly refuses to let you use the merge editor
      > git mergetool //launches the mergetool - if correctly setup, the VS one.
    • I am also facing same issue without any solution so far but to reload the repository completely. this is a SHOWSTOPPER issue and should be fixed ASAP
  • does it support system level config?
    1 Posts | Last post September 14, 2015
    • when working in a 3-party git tool, I can have system level config that applies to all repos on the machine. Is it possible in this extension?
  • Support for Gerrit
    1 Posts | Last post September 03, 2015
    • I have VS2015 Enterprise, and we use Gerrit internally for our Git repo.  I'm trying to use VS2015 to clone a repo, using HTTPS with the extension generating an error:
      Error encountered while cloning the remote repository: An error occurred while sending the request.
      Inner Exception:
          The remote server returned an error: (401) Unauthorized.
          Inner Exception:
              No credentials are available in the security package
      Has the Git extension been tested with Gerrit?  Is there anything to make this work?  I've added my Gerrit URL to the Windows Credentials for my user account.
  • Conflicts prevent checkout
    1 Posts | Last post May 22, 2015
    • Heya
      Im working on a project from 2 different computers. Both have the same version of Visual Studio 2013.
      If I work the home computer, commit, push, go to my other computer - have no pending changes or unsynced commits, try to pull/sync - I get "An error occurred. Detailed message: 3 conflicts prevent checkout", everytime.
      If I fire up the command prompt and do a "git pull", no conflicts and it pulls just fine.
      A quick fix or anything for this? Very annoying to not be able to use the tool in VS and have to rely on the command prompt just to get new commits.
  • to be able to install to the followin
    1 Posts | Last post May 12, 2015
    • Download extension
      Open with 7-zip
      Edit extension.vsixmanifest
      Change line
           <Dependency Id="Microsoft.Framework.NDP" DisplayName="Microsoft .NET Framework" Version="4.5" />
          <Dependency Id="Microsoft.Framework.NDP" DisplayName="Microsoft .NET Framework" MinVersion="4.5" />
      Close editor
      Update archive
      Then install
  • An error occurred. Detailed message: An error was raised by libgit2. Category = Net (Error). Early EOF
    1 Posts | Last post April 23, 2015
    • An error occurred. Detailed message: An error was raised by libgit2. Category = Net (Error).
      Early EOF.
      I am encountering this error while cloning operation, within visual studio 2012. Using Git BASH or Git GUI, I am not getting any error and successfully able to clone remote repository. However, having issues in pushing local changes back to remotely(using GIt BASH) - getting error as 'Cannot access URL return code 22'
      Git server is on Ubuntu 14.04 linux and git client is on Windows 8.1
      Could anyone help me to resolve these issues.
      Really appreciate for the help !!
1 - 10 of 263 Items