[MonoDevelop] Git add-in

"Andrés G. Aragoneses" knocte at gmail.com
Tue Jul 27 12:40:53 EDT 2010

El 27/07/10 17:49, Lluis Sanchez Gual escribió:
> Hi!
> I just committed an improved Git add-in which supports the basic Git


> operations integrated in MonoDevelop. This add-in does the work by
> invoking the git command and parsing the output it generates. This
> solution is not very efficient, but it does the job. The plan is to
> incrementally replace those git invocations by calls to the GitSharp
> library.
> I still have to figure out what's the best way of integrating the Git
> workflow into the MD version control system. The existing version
> control operations are implemented in this way:
>       * The Review Changes view shows files that have been added (new
>         files registered with git add), removed (files removed with git

Then the user has to git add/rm the files manually?? If yes, why not
improving this to make the commit actually do a pre-commit (pursuing git
add and git rm in the files that have been marked in the checkbox) just
before the commit in the same atomic MonoDevelop-operation? This way the
ReviewChanges operation would show *any* change in the local repository.

>         rm) or modified (all modified files, staged and non-staged).

I believe you also have to 'git add' modified files.

>       * A commit operation commits the selected files to the current
>         branch. It does not push.
>       * The Update command does a "pull --rebase --ff" of the current
>         branch.
>       * The Revert command does a "git checkout" of the selected files.
>       * The Show Annotations, Revert Revision and Revert to Revision
>         commands are not yet implemented.
> The Git add-in provides two additional commands available in the context
> menu:
>       * The new Push command shows all changes done wrt a remote branch
>         and then pushes the changes. The remote repo and branch can be
>         selected in a dialog.
>       * The new "Switch to Branch" command, allows switching the working

Can a warning be implemented in case there are local uncommitted changes
when pursuing this operation (because I'm assuming you lose them??)?

>         tree to a branch (git checkout). Once a branch is selected, all
>         operations (including commit, push, pull) are done only for that
>         branch.

I would add a very emphasized label then prior to the Push operation so
the user can visually spot which branch he's targetting.

> So the Git add-in can be used pretty much like the Subversion add-in.
> The only big difference is that changes have to be explicitly pushed to
> the remote repository using the Push command. Feedback about how to
> improve this workflow is welcome.
> Thanks,
> Lluis.

Keep up the good work!



More information about the Monodevelop-list mailing list