[MonoDevelop] Patch - Support for Git Initial Commit

Lluis Sanchez Gual slluis.devel at gmail.com
Mon Jun 28 04:42:01 EDT 2010

El ds 19 de 06 de 2010 a les 03:31 -0400, en/na Dale Ragan va escriure:
> Here's the official kickoff patch to the 'Support for Git' task.  I wanted
> to go ahead and start learning the types and see what was going to be
> needed to retro the existing version control logic for Git.  Since, it is
> different than how an SVN like system functions.
> I then added a new C# library project to main/Main.sln called
> MonoDevelop.VersionControl.Git located under
> main/src/addins/VersionControl.  It is mainly a skeleton right now, but
> the add-in is recognized by MonoDevelop and the VersionControlService sees
> the new Git Version Control System and adds it to it's handlers, but since
> I am throwing a NotImplementedException for the CreateRepositoryInstance
> call.  It will not show up yet in the drop down for selecting a source
> control provider.

The code is now committed, with some changes:

      * Changed the output directory for the assembly to
      * Overriden IsInstalled in GitVersionControl. It returns false so
        it won't throw an exception when starting MD.

> I also went ahead and added the new project to the build system.  The
> add-in is disabled by default for now.  To enable, pass --enable-git=yes
> to main/configure.  Once I get further along and it's somewhat ready for
> people to try, I will enable it by default.  Configure will print out if
> it is enabled or not:
>     Configuration summary
>        * Installation prefix = /opt/mono
>        * C# compiler = /opt/mono/bin/gmcs
>        * Mono class library development extensions: yes
>        * Version control providers:
>        *     Subversion (Unix): yes
>        *     Git: no
>        * Platform bindings: GNOME
>        * Unit tests: no
>        * Mozilla location:
>     Now type `make' to compile MonoDevelop
>     Configuration Summary
>     ---------------------
>         MonoDevelop has been configured with
>         prefix = /opt/mono
>         profile = core
>     Packages included in the build:
>         main
> I am going to type some features up now to make sure everybody is on the
> same page in how it will function.  I am going to keep in mind Mercurial
> since it is very similar to Git during this process.  Hopefully, that will
> make it trivial to add Mercurial support once Git support is done.  Also,
> since this project will depend on GitSharp, what is the policy on
> including third party libraries?  Does it get checked in with the project
> and referenced that way or do you prefer another way?

In this case let's keep a copy of GitSharp in the 'contrib' directory.


More information about the Monodevelop-list mailing list