首页 > 解决方案 > 在 Git 中创建别名的正确方法是什么?

问题描述

我正在尝试创建一个别名来初始化一个 repo,但它不起作用,我不确定为什么,这是别名:

> git config --global alias.init-setinfo "git init && git config --global user.name \"myName\" && git config --global user.mail \"myMail@gmail.com\""

调用它返回:

> expansion of alias 'init-setinfo' failed; 'git' is not a git command

标签: gitcmdalias

解决方案


Git 别名自动运行git命令。

这就是为什么您的别名扩展为:

git git init && ...

这解释了您看到的错误。

解决这个问题的一种方法是使用!别名定义中的字符,它告诉 Git 将其作为外部命令运行:

git config --global alias.init-setinfo "!git init && ...

参考文档:https ://git-scm.com/book/en/v2/Git-Basics-Git-Aliases

(...) Git 只是简单地将新命令替换为您的别名。但是,也许您想运行外部命令,而不是 Git 子命令。!在这种情况下,您以一个字符开始命令。


编辑:另见Git Alias - Multiple Commands and Parameters


推荐阅读