patch-up emacs lisp for using git.el on Emacs Windows-port

73 views
Skip to first unread message

Clifford Caoile

unread,
Apr 18, 2008, 7:10:15 AM4/18/08
to msy...@googlegroups.com
Attention GNU Emacs users on Windows:

As far as I know, the git mode in the style of PCL-CVS and psvn.el
called "git.el" that is part of the official git source distribution
does not work out of the box on Windows and msysgit. In order to solve
this problem, I have proposed an interim patch-up Emacs Lisp file
called "git-mswin.el" [1]. It solves two showstoppers I have
uncovered:

1. Emacs-lisp code that calls out to "git" on Windows fail on "git" if
the exec-path contains .../git/cmd.
2. Functions that call out to "env" do not work on Windows.

Installing git-mswin.el along side git.el allows Windows Emacs users
such as myself to run (M-x) git-status, git-log, git-commit,
git-resolve-file. Of course, YMMV.

As far as I know, this git-mswin.el works with the latest upstream
contrib/emacs/git.el [2] (2008-03-02), and GNU Emacs 22.2 and Meadow
3.00 beta. I forgot to mention that I have been able to use this with
Git-1.5.5-preview20080413.exe.

Please try it out and send feedback and/or fix it (or upstream) up
yourself. Thanks in advance.

Regarding the placement of this patch, I was unsure which git fork was
the appropriate place to post it, either git/mingw/4msysgit.git or
git/mingw.git. In the end I decided to post it on the one with the
accessible mob branch.

References:
[1] http://repo.or.cz/w/git/mingw/4msysgit.git?a=commit;h=3c30e5e87358eba7b6d7dcd6301ae8438f0c30ea
[2] http://repo.or.cz/w/git/mingw/4msysgit.git?a=commit;h=9225d7be0abab0c3b1325a733aea127b45a18625

Best regards,
Clifford Caoile

Steffen Prohaska

unread,
Apr 19, 2008, 3:26:07 AM4/19/08
to pi...@users.sourceforge.net, msy...@googlegroups.com

On Apr 18, 2008, at 1:10 PM, Clifford Caoile wrote:

>
> Attention GNU Emacs users on Windows:
>

[...]


> Please try it out and send feedback and/or fix it (or upstream) up
> yourself. Thanks in advance.

I do not use Emacs, so I'll wait for some feedback by other Emacs
users before taking your commit.


> Regarding the placement of this patch, I was unsure which git fork was
> the appropriate place to post it, either git/mingw/4msysgit.git or
> git/mingw.git. In the end I decided to post it on the one with the
> accessible mob branch.

4msysgit is ok.

Steffen

Clifford Caoile

unread,
Apr 19, 2008, 3:59:18 AM4/19/08
to proh...@zib.de, msy...@googlegroups.com
Hi:

On Sat, Apr 19, 2008 at 4:26 PM, Steffen Prohaska <proh...@zib.de> wrote:
> On Apr 18, 2008, at 1:10 PM, Clifford Caoile wrote:
> > Please try it out and send feedback and/or fix it (or upstream) up
> > yourself. Thanks in advance.
> I do not use Emacs, so I'll wait for some feedback by other Emacs users
> before taking your commit.

Thank you for your consideration.

I also want some feedback as well. Doing the "defadvice" dance is akin
to changing the tires on your moving car. ;-)

Also the contrib/emacs directory is not installed with msysgit (but
vim is, *grrr* ;-) ), so I consider it a preview.

Best regards,
Clifford Caoile

Steffen Prohaska

unread,
Apr 19, 2008, 4:52:04 AM4/19/08
to pi...@users.sourceforge.net, msy...@googlegroups.com

On Apr 19, 2008, at 9:59 AM, Clifford Caoile wrote:

> Also the contrib/emacs directory is not installed with msysgit (but
> vim is, *grrr* ;-) ), so I consider it a preview.

Should we install it? What exactly would be needed?

Steffen

Clifford Caoile

unread,
Apr 19, 2008, 5:26:24 AM4/19/08
to proh...@zib.de, msy...@googlegroups.com
On Sat, Apr 19, 2008 at 5:52 PM, Steffen Prohaska <proh...@zib.de> wrote:
> On Apr 19, 2008, at 9:59 AM, Clifford Caoile wrote:
> > Also the contrib/emacs directory is not installed with msysgit (but
> > vim is, *grrr* ;-) ), so I consider it a preview.

Just to clarify, it == git-mswin.el

> Should we install it?

No. it == contrib/emacs/*, I believe.

I wouldn't mind contrib/emacs being bundled for the advertising, but I
think any Emacs users would find the official contribs by themselves
anyway. Besides, there seems to be other git for Emacs users modes
floating around. Let's wait until we can take off "preview" from the
installers. ;-)

Actually I think the vi stuff is good enough for now. git rebase -i
even works from cmd.exe because of the default GIT_EDITOR=vim, great!
And an Emacs user like me only has to do something like
GIT_EDITOR=c:/app/emacs/bin/gnuclient.exe to get his fix. (backslashes
don't work currently)

> What exactly would be needed?

Since GNU Emacs doesn't have a package management system, installation
is a manual affair. I wouldn't expect msysgit installer to do
installation for me.

If bundling just for advertising, I think a copy of vc-git.el, git.el,
and git-blame.el placed in %Program Files%\Git\contrib\emacs would be
enough. Also git-mswin.el, of course.

Best regards,
Clifford Caoile

Reply all
Reply to author
Forward
0 new messages