我在 ArchLinux 上使用 zsh shell,我想知道是否有一种简单的方法来创建“高级”别名。
普通别名可以正常工作。但是我找不到为替代创建别名的方法,例如:
git clone git@home:some-repo.git
到
git clone [email protected]:repositories/some-repo.git
有没有简单的方法可以直接在 zsh 中使用别名(或类似的东西)来执行此操作?当然它应该是通用的,所以我不需要为每个存储库上的每个 git 操作都使用别名。
提前谢谢!
答案1
在这种特殊情况下,您可以通过 git 而不是 zsh 来完成此操作。将以下内容添加到您的~/.gitconfig
:
[url "[email protected]:repositories/"]
insteadOf = "home:"
现在git clone home:some-repo.git
(和其他 git 命令)将使用正确的 repo。
在更一般的情况下,如果你想要执行比别名允许的更高级的命令替换,请查看shell 函数。