Параметр, вероятно, применяется, который вы можете проверить с помощью псевдонима, например:
[alias]
check-status-rel = config --global --get status.relativePaths
Причина, по которой он не работает для вас, описана в man git-config
, во втором абзацеописание параметров alias.*
:
alias.*
Command aliases for the git(1) command wrapper - e.g. after
defining "alias.last = cat-file commit HEAD", the invocation "git
last" is equivalent to "git cat-file commit HEAD". To avoid
confusion and troubles with script usage, aliases that hide
existing Git commands are ignored. Arguments are split by spaces,
the usual shell quoting and escaping is supported. A quote pair or
a backslash can be used to quote them.
If the alias expansion is prefixed with an exclamation point, it
will be treated as a shell command. For example, defining
"alias.new = !gitk --all --not ORIG_HEAD", the invocation "git new"
is equivalent to running the shell command "gitk --all --not
ORIG_HEAD". Note that shell commands will be executed from the
top-level directory of a repository, which may not necessarily be
the current directory. GIT_PREFIX is set as returned by running
git rev-parse --show-prefix from the original current directory.
See git-rev-parse(1).
Короче говоря, псевдонимы Git, которые являются командами оболочки, всегда выполняются в корневом каталоге хранилища.
Редактировать: Очевидно, вы можете простоcd
в каталог перед запуском команд:
[alias]
st = "!cd \"$GIT_PREFIX\" && git status"