If gitk is ran as a shell alias it cannot find specified files in the command line if ran in a subdir (because it's ran in the top-level directory). cd Documentation/ git -c 'alias.test=!gitk' test -- config.txt The simplest way to fix this is to automatically cd to the specified $GIT_PREFIX in the environment. Signed-off-by: Felipe Contreras <felipe.contreras@xxxxxxxxx> --- gitk | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/gitk b/gitk index 23d9dd1..c7c6989 100755 --- a/gitk +++ b/gitk @@ -12505,6 +12505,10 @@ if {[catch {set gitdir [exec git rev-parse --git-dir]}]} { exit 1 } +if {[info exists env(GIT_PREFIX)] && $env(GIT_PREFIX) ne ""} { + cd $env(GIT_PREFIX) +} + set selecthead {} set selectheadid {} -- 2.31.0