有什么理由使用 Git 别名而不是 git-* 脚本吗?

Any reason to use a Git alias instead of a git-* script?

在 Git 中,您可以使用别名或创建可执行文件来创建自定义命令,该文件包含在您的 PATH 中,以 git- 开头。有什么理由选择别名而不是脚本吗?

我与一组开发人员一起工作,并制作了一些我想与他们分享的方便的别名。我的一位同事建议别名应该用于简单的事情,比如缩短命令(例如 git co 作为 git checkout 的别名),而脚本对于更复杂的任务很有用,比如组合多个功能合二为一。但他想不出不使用脚本的任何理由,不确定这是否正是他认为应该的样子,或者他是否在某处听说过应该是这样的,或者是什么。

我们的团队都在同一个开发服务器上工作,所以如果我可以使用脚本,我可以简单地将它放在 /usr/local/bin 中,每个人都可以自动访问它。所以即使有一个简单的别名,将它作为一个 git 脚本也会方便得多,这样每个人都会自动拥有它,而不是我必须告诉每个人单独设置它。更不用说,当一个新的开发人员开始时,我们也必须记住让他们进行设置。

我知道这听起来像是我在为脚本方法做宣传,我确实是。我只是想知道使用这种方法是否有任何缺点。

通过使用 git 别名,您将能够使用分支名称、标签等的自动完成功能

别名是通过 git 的配置机制定义的,因此它们可以应用于整个系统、单个用户或仅单个存储库,具体取决于您是否在 [=10= 中定义它们]、~/.gitconfig$GIT_DIR/config。如果您将自己的 .gitconfig 复制到一台新机器,它将通过复制单个文件来包含您的所有个人别名,这似乎比复制完整目录并正确设置 PATH 以查找开销更少你的文件。