Thursday, April 12, 2012

T4MVC has its own home, with some git love

I have just moved T4MVC to a new CodePlex project, instead of it being part of the MvcContrib project. Its new home is

If you’re a T4MVC user, that should not make much difference except that there is now a new place to discuss it and file bugs. NuGet is still the place to go to get T4MVC!

Note that T4MVC is still part of the MvcContrib effort, even if it doesn’t share the same source tree. Here are the reasons for the move.

Reduce confusion

T4MVC is quite separate from the rest of MvcContrib, because it’s just a T4 template, and not some code that’s part of an assembly. Having the T4MVC files be in their own little island in the middle of a repo with many unrelated thing has been a bit of a barrier of entry for people wanting to make a quite contribution.

Also, since all MvcContrib bugs are files in the same place, there was always additional pain for me to filter T4MVC issues from unrelated ones.

Likewise, we’ll now have our own discussion forum that only focuses on T4MVC. Most users have been using StackOverflow for T4MVC support, and you can continue to do that if you prefer.

Switch to git!

I’ve been increasingly using git over Mercurial (like everyone else it seems!), to the point where having to use Mercurial is becoming an annoyance. Since CodePlex now supports git, it was the perfect opportunity to switch to that!


  1. Hi David!

    I know it's totally off topic, but I've been wondering about this actually since ASP.NET MVC went to GIT on Codeplex:
    What is GIT doing that works better than Mercurial?

    I've been dicussing this particular decision with colleagues for own projects for a while now and there have been two particular issues that have us favor GIT over Mercurial:

    *) GIT is said to have a problem keeping track of a file's history editing and renaming a file in the same commit:
    Mercurial actually tracks renames:

    *) I've tried GIT on Windows a little while ago and was shocked over the installation experience, tooling support, VS integration. It felt really very brittle/primitive compared to what we have with SVN and the Mercurial support seems to be much better from what I've heard from colleagues.

    Do you have by any chance have additional insights about GIT's advantages over Mercurial that you can share, since it now seems to be the new trend at Microsoft's open source projects? It would be really appricated, since I don't want to miss an obvious advantage of GIT over Mercurial in large projects.

    Regards, Michael

  2. @Michael: I'm not a DVCS expert, but for me, the thing I like most about git over hg is the lightness of branching. I love how you can push a short lived branch to the server and delete it when you're done with it.

    I agree that the git tools on Windows are not quite where they should be yet. But I think they'll get there.

    Anyway, I'd rather not turn this post into a git vs hg dicussion, since it's supposed to be about T4MVC :)

  3. Thanks for the insight!
    Regards, Michael