在 Git 中创建别名的正确方法是什么?

Ant*_* P. -2 git alias cmd

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

> git config --global alias.init-setinfo "git init && git config --global user.name \"myName\" && git config --global user.mail \"myMail@gmail.com\""
Run Code Online (Sandbox Code Playgroud)

调用它会返回:

> expansion of alias 'init-setinfo' failed; 'git' is not a git command
Run Code Online (Sandbox Code Playgroud)

Gaë*_*l J 5

Git 别名自动运行git命令。

\n

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

\n
git git init && ...\n
Run Code Online (Sandbox Code Playgroud)\n

这解释了您看到的错误。

\n

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

\n
git config --global alias.init-setinfo "!git init && ...\n
Run Code Online (Sandbox Code Playgroud)\n

R\xc3\xa9f\xc3\xa9rence 文档:https://git-scm.com/book/en/v2/Git-Basics-Git-Aliases

\n
\n

(...)Git 只是将新命令替换为您为其指定的任何别名。但是,也许您想运行外部命令,而不是 Git 子命令。在这种情况下,您可以使用一个字符来启动该命令!

\n
\n
\n

编辑:另请参阅Git Alias - 多个命令和参数

\n