Okay.
First off, please try debugging this on Linux or BSD/OS X. All bets
are off on Windows...
> I assume when I attempt the interactive rebase through the GUI, it will
> attempt to invoke git-xbase. As that's in share/git-cola/bin, perhaps it
> can't find it (I'm unsure how it should find it). I have tried a few things,
> including an outright copy of git-xbase onto a directory on my path, but
> nothing seems to work. (On linux).
>
> I have looked at the code, but can't work out how
> git-xbase/GIT_SEQUENCE_EDITOR are supposed to get invoked by git-cola.
The code is in cola/cmds.py. The relevant classes are 'Rebase' and
'GitXBaseContext'.
The context is the one that sets the GIT_SEQUENCE_EDITOR environment
variable. Make sure you're running the latest code.
The reason you don't see an explicit invocation of "git-xbase" is
simply because we don't invoke it directly. It's invoked indirectly
via the "git.rebase(...)" call. The actual code that calls the script
is in Git's source code (git-rebase--interactive.sh).
Here's the patch that added this feature to Git itself:
http://thread.gmane.org/gmane.comp.version-control.git/183819/focus=183826
The reason I say try Linux or BSD/Mac OS X is that we set
GIT_SEQUENCE_EDITOR to a python file with a #! shebang line. I have no
idea how that would work on Windows, and whether it's even possible
as-is. It might be broken, who knows.
In any case, you said you made it work by setting GIT_SEQUENCE_EDITOR
and then running "git rebase" manually. That's basically all we do as
well (check the code). You can also set GIT_TRACE=1 if you'd like to
see what commands git-cola is running. You'll see that it's basically
just e.g. "git rebase --interactive --autosquash origin/master" where
"origin/master" is the "new upstream" that you select in the GUI.
I don't use Windows, sorry. My "Windows box" is a janky Win2k VM and
I only use it for creating the win32 installer.
I'm sure it's possible to make it work on Windows but that's not my
itch to scratch (who knows, it might already work). Patches are very
much appreciated, though. My Windows-fu is pretty much non-existent
so if anyone knows Windows + Python then the help would be much
appreciated.
I hope that helps,
--
David