Re: Feature or a bug: git aliases are executed in git-root directory

Previous thread: Re: [PATCH] perf: Fix endianness argument compatibility by Jeff King on Wednesday, April 14, 2010 - 2:52 am. (1 message)

Next thread: Checksum mismatch problem by Manuel Corpas on Wednesday, April 14, 2010 - 6:31 am. (1 message)
From: Jens Otten
Date: Wednesday, April 14, 2010 - 4:18 am

Hi,

i started to use git (version is 1.6.3.3 (ubuntu)) and it is really great!

but i have one problem when using aliases. maybe i made a mistake, but 
here is my problem.

i set up my ~/.gitconfig as follows:
----------
...
[alias]
    meld = !GIT_EXTERNAL_DIFF='git-diff-to-meld-redirect' git diff
...
----------

now when i work in a subdirectory of my git-root dir and want to make a 
diff, this works perfectly:
$ cd ~/git-root/subdir
$ git diff some_file

but when doing the same using the alias i get an error:
$ cd ~/git-root/subdir
$ git meld some_file
fatal: ambiguous argument 'some_file': unknown revision or path not in 
the working tree.
Use '--' to separate paths from revisions

whereas using the relative path starting from the git-root directory works
$ cd ~/git-root/subdir
$ git meld subdir/some_file

is there a way to solve this problem?

thanks for your help
jens
--

From: Sverre Rabbelier
Date: Wednesday, April 14, 2010 - 6:10 am

Heya,


Yes, put this script in your path (and make it executable):

cat > git-meld << EOF
#!/bin/sh

GIT_EXTERNAL_DIFF='git-diff-to-meld-redirect' git diff "$@"
EOF

-- 
Cheers,

Sverre Rabbelier
--

From: David Aguilar
Date: Friday, April 16, 2010 - 1:34 am

Previous thread: Re: [PATCH] perf: Fix endianness argument compatibility by Jeff King on Wednesday, April 14, 2010 - 2:52 am. (1 message)

Next thread: Checksum mismatch problem by Manuel Corpas on Wednesday, April 14, 2010 - 6:31 am. (1 message)