From: Junio C Hamano <hidden> Date: 2016-06-15 22:46:52
Martin Langhoff [off-list ref] writes:
My main laptop (and part-time dev box) has a partially hosed git
installation. This is an ubuntu intrepid machine where I have been
building git from src for a while. Perhaps there's a way to diagnose
this before I take more drastic measures :-)
So far gc, repack and stash show errors. No dataloss AFAICS (though
the git stash errors scared me initially).
gc and repack error out thus:
$ git gc
usage: git-pack-objects [{ -q | --progress | --all-progress }]
[--max-pack-size=N] [--local] [--incremental]
[--window=N] [--window-memory=N] [--depth=N]
[--no-reuse-delta] [--no-reuse-object] [--delta-base-offset]
[--threads=N] [--non-empty] [--revs [--unpacked | --all]*] [--reflog]
[--stdout | base-name] [--keep-unreachable] [<ref-list | <object-list]
error: failed to run repack
$ echo $?
255
Yes, but your shell seems to find git-diff somewhere, so what about:
type --all git-diff
echo $PATH
In any case, Ubuntu seems to do something strange about binaries which
used to be installed. How can "git-diff" trigger a message about
"apt-get install git-core"?
For sure it does the same strange thing for everything else which used
to be in your PATH, and this makes current stash, gc etc. fail when
trying to call git-pack-objects and such. A "/usr/bin time machine"???
OTOH: The git-pack-objects usage line indicates that you clearly have
older plumbing lying around. I suspect there are at least 2 issues on
that box.
Michael
From: Martin Langhoff <hidden> Date: 2016-06-15 22:46:52
On Thu, May 28, 2009 at 10:29 AM, Michael J Gruber
[off-list ref] wrote:
Yes, but your shell seems to find git-diff somewhere, so what about:
type --all git-diff
echo $PATH
$ type --all git-diff
bash: type: git-diff: not found
$ echo $PATH
/home/martin/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
there is _no other_ git-diff. It's bash magic. See
http://popey.com/command_not_found
Note that all the key commands work. I clone, diff, commit, push,
merge daily on this machine.
OTOH: The git-pack-objects usage line indicates that you clearly have
older plumbing lying around. I suspect there are at least 2 issues on
that box.
Might be. Maybe ~/bin got cleaned up but not libexec? Or the bisecting
back-and-forth left stray bits in ~/bin?
cheers,
m
--
martin.langhoff@gmail.com
martin@laptop.org -- School Server Architect
- ask interesting questions
- don't get distracted with shiny stuff - working code first
- http://wiki.laptop.org/go/User:Martinlanghoff
From: Martin Langhoff <hidden> Date: 2016-06-15 22:46:52
On Thu, May 28, 2009 at 11:34 AM, Martin Langhoff
[off-list ref] wrote:
Might be. Maybe ~/bin got cleaned up but not libexec? Or the bisecting
back-and-forth left stray bits in ~/bin?
The problem was with a polluted libexec. Clearing/reinstalling git in
my ~/bin didn't help, but the same procedure in libexec worked.
Minor note for people bisecting random versions of git :-)
m
--
martin.langhoff@gmail.com
martin@laptop.org -- School Server Architect
- ask interesting questions
- don't get distracted with shiny stuff - working code first
- http://wiki.laptop.org/go/User:Martinlanghoff
From: Michael J Gruber <hidden> Date: 2016-06-15 22:46:52
Martin Langhoff venit, vidit, dixit 28.05.2009 11:34:
On Thu, May 28, 2009 at 10:29 AM, Michael J Gruber
[off-list ref] wrote:
quoted
Yes, but your shell seems to find git-diff somewhere, so what about:
type --all git-diff
echo $PATH
$ type --all git-diff
bash: type: git-diff: not found
$ echo $PATH
/home/martin/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
there is _no other_ git-diff. It's bash magic. See
http://popey.com/command_not_found
This is insane. Don't they even distinguish between an interactive shell
and a non-interactive one?
Note that all the key commands work. I clone, diff, commit, push,
merge daily on this machine.
quoted
OTOH: The git-pack-objects usage line indicates that you clearly have
older plumbing lying around. I suspect there are at least 2 issues on
that box.
Might be. Maybe ~/bin got cleaned up but not libexec? Or the bisecting
back-and-forth left stray bits in ~/bin?
Well, I would say go "find / git-diff-index", or simply nuke anything
git you find and do a clean install... "find"ing the left over bits
would help making sure that git's own search path is OK.
Michael
From: Martin Langhoff <hidden> Date: 2016-06-15 22:46:52
On Thu, May 28, 2009 at 11:47 AM, Michael J Gruber
[off-list ref] wrote:
This is insane. Don't they even distinguish between an interactive shell
and a non-interactive one?
Yes they do. I mentioned it but I didn't think it was the reason
behind the problem.
Well, I would say go "find / git-diff-index", or simply nuke anything
git you find and do a clean install... "find"ing the left over bits
would help making sure that git's own search path is OK.
well, that's not what happens when people bisect back and forth. It
used to be reasonably safe, it got unsafe when we moved lots of things
to libexec (and therefore the make install target got a nice warning
message about it). Now there might something acting up again.
Alas, I didn't keep a backup of my libexec :-/
m
--
martin.langhoff@gmail.com
martin@laptop.org -- School Server Architect
- ask interesting questions
- don't get distracted with shiny stuff - working code first
- http://wiki.laptop.org/go/User:Martinlanghoff