antonio
antonio

Reputation: 11110

Differences between MinGW from msysgit (aka Git on Windows) and MinGW from MinGW.org

I have installed msysgit via the net installer. I ended up with almost 2 giga of material, where I have among the other things git sources and MinGW.

I have three questions

In essence I need help to decide whether use the small portable Git and set symbolic links to MinGW or use the huge all-in-one distro and trash the good old MinGW.org.

Upvotes: 8

Views: 4489

Answers (1)

rubenvb
rubenvb

Reputation: 76519

Well, there a few misconceptions at play here. Let's first get them out of the way:

  1. The Unix-like shell environment you are talking about is called MSYS. It was originally developed by MinGW.org as a fork of Cygwin. This was in turn forked to be improved slightly so that git could run with it, which became msysgit. Note that the git binaries are native Win32 programs, but the POSIX shell is needed for its operation.

  2. MinGW.org provides a commandline installer/package installation tool called mingw-get. It can be run from MSYS (and I believe plain cmd as well).

Now, to answer your question:

  • I would say msysgit provides the minimal amount of packages needed for a fully functional git. Lots of git runs through the shell, so therefore you need a lot of utilities. I'm not sure about this one though.

  • Why are you building git? That sounds like an ugly endeavour. I suggest looking below for a better way to use git and MinGW and a shell together.

  • MSYS is quite portable, though you may need to rerun the postinstallation script if you relocate. By default, msysgit puts its ssh keys in your windows user folder, not in the MSYS tree, so be sure not to lose those.

Finally, to avoid all these issues and help improve your setup by a significant factor (of some random setup quality quantity): use MSYS2. What is MSYS2? It's an up to date fork of current Cygwin, patched to act like MSYS (with the whole path translation stuff), integrated with a package manager that's actually useful, and MinGW-w64 toolchains. To sum it up: MSYS2 is better, better, and better than anything you have now. Note that you can install a ton of MinWG-w64 libraries without having to build them yourself. You can also install git, although the MSYS2 package does not

Upvotes: 16

Related Questions