• TortoiseGit Challenge

    schacon 5 Dec 2008

    Poor Windows support has always been a big roadblock to Git adoption. The truth of the matter these days is that Windows support through msysGit is actually quite good. Git-Gui works well on Windows and provides a very functional (if somewhat homely) interface to git on Windows and the command line version works well too.

    The one issue with Git on Windows today is the lack of a TortoiseGit application. TortoiseSVN is one of the most familiar and ubiquitous applications for source control under Windows and we’d love to see a Git workalike, to help make our Windows friends feel more at home. However, none of us here at Logical Awesome use Windows (or really want to spend that much time in it), so we’d like to issue a challenge.

    If any of you are, or know, people who use Windows and are good at Python, we would like you to produce a TortoiseGit that can be installed with msysGit that would make a TortoiseSVN user feel more or less at home. I say Python because there is a GPL TortoiseHg application that should not be too difficult to port to use msysGit – Mercurial and Git are almost identical in their basic command sets and that is all we’re looking for in TortoiseGit.

    In return, we will furnish whomever (individual or business) takes up this challenge and gives the community an installable executable with a free Large account for life. Any takers?

    Email “scottlogicalawesome if you’re interested.

  • Comments

    mletterle Fri Dec 05 15:54:26 -0800 2008

    Oooooh, I’m interested in helping. Not sure about trying to port TortoiseHg though…

    schacon Fri Dec 05 16:41:39 -0800 2008

    git-cheetah is another good starting point, but I figured python might be a tad easier. if you get git-cheetah working fully, then booyah.

    jrimmer Fri Dec 05 19:20:05 -0800 2008

    I wonder if a C# library shelling to the msysGit porcelain, similar to what TortoiseHg is doing for hg, or otherwise linking to the underlying plumbing would be more engaging. If this interests anyone else feel free to drop me a line.

    jrtowell Fri Dec 05 19:31:21 -0800 2008

    I will furnish the winner with a lifetime supply of high fives and perhaps a celebratory chest bump. In all seriousness, I would love to see a tortoise like UI for git.

    mletterle Fri Dec 05 23:26:02 -0800 2008

    @jrimmer The problem with that is the issue of multiple runtimes, see: http://blogs.msdn.com/junfeng/archive/2005/11/18/494572.aspx

    It looks like we got something starting to go with git-cheetah.. maybe…

    piyo Sat Dec 06 04:40:59 -0800 2008
    I too would like to see a TortoiseSVN like interface for git on Windows.

    a GPL TortoiseHg application that should not be too difficult to port to use msysGit Please note that msysGit seems to have problems with “edge” cases like i18n path names and other weirdness due to the difficulty of porting to Windows and the upstream specifications. Make sure to take a look at the msysgit issue tracker items. http://code.google.com/p/msysgit/issues/list

    bjeanes Sat Dec 06 04:41:30 -0800 2008

    ... wishing I knew python right about now … and was brave enough to use windows for a long enough time to test it.

    jrimmer Sat Dec 06 12:27:04 -0800 2008

    @TheProkrammer I recalled hearing about that some time ago. From discussions with a few peers I was under the impression the issue was either relatively straightforward to workaround or at minimum mitigate.

    pheew Mon Dec 08 06:21:20 -0800 2008
    jeremymcanally Mon Dec 08 07:49:06 -0800 2008

    The big issue is that hg is written in Python, so it’s entirely likely that the Tortoise guys hook into the actual lib somehow.

    spicyj Mon Dec 08 21:32:20 -0800 2008

    We could always use something like GitPython or something similar.

    PhillipTaylor Tue Dec 09 04:49:02 -0800 2008

    The only way to do things like overlay icons in Windows Explorer natively and add context menus dynamically is through the use of a technology called “Shell Namespace Extensions”. This is a set of C++ libraries for manipulating and working with Windows explorer itself. The problem is that it isn’t ready available to Python, nor VB6, not any of the .NET languages. Many attempts to wrap those libraries up have failed. A few poor libraries exist but they require editing the .NET object code because the languages can’t access the pointers in the C data structures. Anyway, I think in order to mimic TortoiseCVS you’re probably going to need to write a full set of DLLs for Windows in C++. There is no shortcut.

    judofyr Sat Dec 13 14:10:55 -0800 2008

    TortoiseGit (not by me)

    jnareb Mon Dec 15 08:59:48 -0800 2008

    The InterfacesFrontendsAndTools page at Git Wiki mentions (beside TortoiseGit mentioned above) Git Extensions project.

    lznuaa Mon Dec 15 17:29:41 -0800 2008

    There are a TortoiseGit project, porting from TortoiseSVN. preview 0.1.0.0 have been released. http://code.google.com/p/tortoisegit

    spdr870 Wed Dec 17 10:17:16 -0800 2008

    I allready created a very complete Tortoise-like shell extension for git that is stable. It does not install msysgit, but I am planning to include it soon in the setup. GitExtensions is able to pull/push/clone from online repositories like GitHub.

    The project is about 3 weeks old, but there is allready a very complete and stable version. This was possible due programming mostly in C# (except shell extensions of course, this is written in c++). Currently I am the only developer on the project, I’m affraid this will not change soon.

    Main features - Shell extensions - Visual studio plugin - Separate git application

    Features: - Browse repository (inc visual graph) - Add files - Apply patch - Checkout branch/revision - Cherry pick - Create branch/tag - Delete branch/tag - Clone - Commit - Create (format) patch - Init new repository - Merge branches - Pull - Push - Run mergetool - Stash - View differences

    Information about the project can be found here: http://sourceforge.net/projects/gitextensions/

    The sources can be found here on GitHub.

    tchalvak Fri Jan 30 15:38:34 -0800 2009

    Yeah man, Tortise-like interface to git would allow me to say to others: Hey, use this app on windows, and then we all can use github.

    Please log in to comment.