2

有时我有一个两字命令,git log或者apt-get install我想添加一个默认参数。例如,大多数时候我想将--abbrev-commit参数添加到 my git log,并将-y参数添加到apt-get install.

git log --abbrev-commit
apt-get install --abbrev-commit

但是,我似乎无法创建涉及两个单词命令的别名:

$ alias 'git log'='git log --abbrev-commit'
bash: alias: `git log': invalid alias name
 $ alias git log='git log --abbrev-commit'
bash: alias: git: not found

我该怎么做呢?

4

2 回答 2

5

你不能用 shell 别名做你正在尝试的事情。这不是他们的工作方式。git您可以使用 git 配置处理的那个。跑:

git config --global log.abbrevCommit true

或者,或者,编辑您的~/.gitconfig并添加:

[log]
    abbrevCommit = true

如果您希望使用每个存储库的行为而不是编辑全局配置,则可以删除--global标志或编辑项目.git/config而不是全局配置。

那个apt-get会更难。不过,您可以编写一个 bash 函数来执行此操作。类似(未经测试):

apt-get() {
    if [[ $1 == "install" ]]
    then
        command apt-get -y "$@"
    else
        command apt-get "$@"
    fi
}
于 2013-07-18T18:24:44.003 回答
2

内部~/.gitconfig

[alias]
        cm = commit -am

使用 git config 命令:

git config --global alias.cm "commit -am"
于 2019-09-09T07:47:01.560 回答