<div dir="ltr">We've implemented a fair amount of the Git-facing stuff here already (see the stackage-update package). It just needs to clone from an https Git repo on Github and fetch from the same repo. Signature verification is also possible, but not necessary to get an improvement over the current state of affairs. So I don't think interacting with user configs will be a blocker here. That said, I agree with the main thrust of your email: seeing is believing. Let's add Git and GPG to MinGHC and see where that puts us. As usual, more hands help out with getting these things done quicker, so if someone wants to get involved, let me know. But I expect this improvement to happen some time this month.<br></div><br><div class="gmail_quote">On Tue, May 5, 2015 at 1:04 PM Tillmann Rendel <<a href="mailto:rendel@informatik.uni-tuebingen.de">rendel@informatik.uni-tuebingen.de</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<br>
Michael Snoyman wrote:<br>
> That said, I think bundling the necessary Git tooling with MinGHC is an<br>
> easy win.<br>
<br>
Agreed. I mostly want to lobby for actually bundling it (properly, see<br>
below) instead of merely hand-waiving about how easy it is to install<br>
git on Windows.<br>
<br>
> here's actually a really easy solution to "have Git installed": bundle it with MinGHC<br>
<br>
This solution is certainly possible, but I'm not so sure whether it is<br>
*really easy*. From my perspective, MinGHC+git should be able to coexist<br>
on a system with some other system that bundles git, say, FOO+git,<br>
and/or just a copy of git that the user installed. (Otherwise,<br>
installing git after installing MinGHC+git would break MinGHC+git which<br>
would be unfortunate, wouldn't it?)<br>
<br>
Now how should the various copies of git interact?<br>
<br>
  - should they share a configuration file?<br>
  - should they use the same shell?<br>
  - should they ever call each other?<br>
<br>
I'm imaging a search-path-tweaking nightmare to get this to work. For<br>
example, what if a user sets up `git bisect` to call `cabal update` (as<br>
part of some larger script) which in turns would call `git whatever` to<br>
update the index. Presumably, that should be different copies of git<br>
involved.<br>
<br>
But maybe cabal would need only some low-level git stuff which don't<br>
interact with user configuration or use the shell at all? That would<br>
make things easier.<br>
<br>
I'm not sure how valid my concerns here are, but I'm not convinced by<br>
"Git is fairly well supported on Windows these days and installs easily."<br>
<br>
   Tillmann<br>
</blockquote></div>