git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Michael Hutchinson" <m.j.hutchinson@gmail.com>
To: "Andreas Ericsson" <ae@op5.se>
Cc: monodevelop-list@lists.ximian.com,
	Git Mailing List <git@vger.kernel.org>,
	Shawn Pearce <spearce@spearce.org>
Subject: Re: git integration with monodevelop
Date: Wed, 12 Nov 2008 18:56:47 -0500	[thread overview]
Message-ID: <aec34c770811121556y34465436i9ffb5e29dbf203a7@mail.gmail.com> (raw)
In-Reply-To: <491AAE6D.8030304@op5.se>

On Wed, Nov 12, 2008 at 5:22 AM, Andreas Ericsson <ae@op5.se> wrote:
> Recently, I've started learning C#. More for fun than anything else,
> but one of the mono core devs sniffed me out and said they've been
> thinking of porting jgit to C# to get a working IDE integration in
> monodevelop. Currently, the only option available (with IDE
> integration anyways) to the poor C# devs is either Microsoft's
> crappy VSS, or the less crappy but still far from fantastic
> Subversion.

I'm glad you're interested :-)

We do have an interface in MD for integrating VCS providers, and
although the only existing one is SVN, I believe some users are
working on bzr and perforce addins. I'd prefer to see git get
established as the default (D)VCS ...

Currently, to implement  a VCS provider one needs to subclass
VersionControlSystem, as demonstrated by the SVN provider:
http://anonsvn.mono-project.com/viewvc/trunk/monodevelop/main/src/addins/VersionControl/MonoDevelop.VersionControl.Subversion/MonoDevelop.VersionControl.Subversion.addin.xml?view=markup.
We may need to extend the interfaces in order to expose more
DVCS-specific features, but I think it's best to find and fix these as
needed rather than speculatively implementing things.

> So in an effort to learn C#, I've decided to play along with this
> (hopefully with some help from the MonoDevelop team), but it seems
> to me that the best place to start is the fledgling libgit2 and link
> that with git-sharp. The primary reason for this is ofcourse that I
> think it'd be a terrible waste to have yet another from-scratch
> implementation of git in a new language (ruby, java, C#, C...). The
> secondary reason is that it would be neat to have more OSS projects
> use my favourite scm.

That's actually one of the reasons we'd like a full managed
implementation --it'd be trivial to include to with cross-platform
Mono-based apps without worrying about architecture, C dependencies,
etc. For example, Tomboy could use git to store its notes, so users
would have a versioned history and better synch/merge. Then, for
example, you could build a Silverlight version that would have full
history in local storage.

> Besides, getting something to rely on libgit2 early on is probably
> the best way to get more people interested in making development of
> it proceed rapidly.
>
> Thoughts anyone?

I hadn't heard of libgit2 (it looks pretty recent) but it looks
interesting -- at least stable APIs would no longer be a worry.
However, I think fully managed is the way to go, from the point of
view of much easier dependencies (on windows, mac, silverlight and
older linux distros) and licensing.

-- 
Michael Hutchinson
http://mjhutchinson.com

  parent reply	other threads:[~2008-11-12 23:58 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-11-12 10:22 git integration with monodevelop Andreas Ericsson
2008-11-12 10:31 ` Andreas Ericsson
2008-11-13  0:00   ` Govind Salinas
2008-11-12 19:48 ` [MonoDevelop] " Miguel de Icaza
2008-11-12 22:19   ` Jakub Narebski
2008-11-13  1:42     ` Miguel de Icaza
2008-11-14 13:26       ` [MonoDevelop] " Johannes Schindelin
2008-11-14 17:28         ` Miguel de Icaza
2008-11-14 17:55           ` [MonoDevelop] " Jakub Narebski
2008-11-14 17:53         ` "Andrés G. Aragoneses"
2008-11-12 23:56 ` Michael Hutchinson [this message]
2008-11-13  7:55   ` Andreas Ericsson
2008-11-13  9:28     ` Christian Hergert
2008-11-13 11:01       ` [MonoDevelop] " Andreas Ericsson
2008-11-13 16:10         ` Lluis Sanchez Gual
     [not found] ` <491AF20D.4070600@kde.ru>
     [not found]   ` <491AF768.3010607@op5.se>
     [not found]     ` <491B02FF.2060204@kde.ru>
2008-11-13  7:20       ` Andreas Ericsson
2008-11-14 13:30         ` Johannes Schindelin
2008-11-14 13:53           ` Andreas Ericsson
2008-11-14 14:55             ` Johannes Schindelin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=aec34c770811121556y34465436i9ffb5e29dbf203a7@mail.gmail.com \
    --to=m.j.hutchinson@gmail.com \
    --cc=ae@op5.se \
    --cc=git@vger.kernel.org \
    --cc=monodevelop-list@lists.ximian.com \
    --cc=spearce@spearce.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).