章节 ▾
第二版
-
1. 起步
-
2. Git 基础
-
3. Git 分支
-
4. 服务器上的 Git
- 4.1 协议
- 4.2 在服务器上部署 Git
- 4.3 生成 SSH 公钥
- 4.4 架设服务器
- 4.5 Git Daemon
- 4.6 Smart HTTP
- 4.7 GitWeb
- 4.8 GitLab
- 4.9 第三方托管服务
- 4.10 小结
-
5. 分布式 Git
-
A1. 附录 A: Git 在其他环境
- A1.1 图形界面
- A1.2 Visual Studio 中的 Git
- A1.3 Visual Studio Code 中的 Git
- A1.4 IntelliJ / PyCharm / WebStorm / PhpStorm / RubyMine 中的 Git
- A1.5 Sublime Text 中的 Git
- A1.6 Bash 中的 Git
- A1.7 Zsh 中的 Git
- A1.8 PowerShell 中的 Git
- A1.9 小结
-
A2. 附录 B: 在应用程序中嵌入 Git
-
A3. 附录 C: Git 命令
2.7 Git 基础 - Git 别名
Git 别名
在我们进入下一章之前,我们想介绍一个可以使您的 Git 体验更简单、更轻松、更熟悉的功能:别名。为了清晰起见,我们不会在本书的其他地方使用它们,但如果您经常使用 Git,别名是您应该了解的内容。
Git 不会自动推断您输入的命令是否是完整的。如果您不想输入 Git 命令的全部文本,可以使用 git config 为每个命令轻松设置一个别名。以下是一些您可能想要设置的示例:
$ git config --global alias.co checkout
$ git config --global alias.br branch
$ git config --global alias.ci commit
$ git config --global alias.st status
这意味着,例如,您只需键入 git ci 而不是 git commit。随着您继续使用 Git,您可能会经常使用其他命令;不要犹豫创建新的别名。
此技术对于创建您认为应该存在的命令也很有用。例如,为了纠正您在使用“撤销暂存文件”时遇到的可用性问题,您可以向 Git 添加自己的“unstage”别名。
$ git config --global alias.unstage 'reset HEAD --'
这将使以下两个命令等效:
$ git unstage fileA
$ git reset HEAD -- fileA
这看起来更清晰一些。通常还会添加一个 last 命令,如下所示:
$ git config --global alias.last 'log -1 HEAD'
这样,您可以轻松查看上次提交。
$ git last
commit 66938dae3329c7aebe598c2246a8e6af90d04646
Author: Josh Goebel <dreamer3@example.com>
Date: Tue Aug 26 19:48:51 2008 +0800
Test for current head
Signed-off-by: Scott Chacon <schacon@example.com>
正如您所见,Git 只是用您为其设置别名的内容替换新命令。但是,也许您想运行一个外部命令,而不是 Git 的子命令。在这种情况下,您必须在命令前加上 ! 字符。如果您编写自己的与 Git 存储库一起工作的工具,这将非常有用。我们可以通过将 git visual 别名设置为运行 gitk 来演示。
$ git config --global alias.visual '!gitk'