使用 Git 别名加快 Git 工作流程
由 Mux 主办的 DEV 全球展示挑战赛:展示你的项目!
Git 是我们开发工作流程中不可或缺的一部分。有一些命令需要每天重复使用。我以前总是依赖命令建议,或者使用 shell 中安装的软件包来访问方便的 Git 别名。
但通常情况下,你必须使用软件包创建者设定的别名。尽管大多数别名已被非正式地全局接受,例如gaforgit add等。
但是你猜怎么着?你不需要依赖任何第三方软件包;你可以使用你喜欢的别名创建自己的软件包!
创建 Git 别名有两种方法:✌
使用 git 配置工具💻
这是添加别名的首选方法,因为git它提供了添加别名的选项。
假设你厌倦了时不时地重复执行提交命令。如果我们能创建一个别名来更快地提交更改,那就太好了。
无需多言!🎉
git config --global alias.c "commit -m"
上述命令遵循以下语法:
git config --global alias.<alias> "<command>"
现在我们可以使用c别名来表示commit -m。
git c "Update readme with social links"
编辑 .gitconfig 文件📝
使用命令添加多个别名会很麻烦git config,所以还有一种更简单的替代方法。
您创建的所有别名都会保存在您主目录下的文件中。我们可以打开该文件,并按照TOML.gitconfig格式添加别名。请确保除了添加表格及其内容之外,不要修改文件中的任何其他内容。[alias]
使用您喜欢的编辑器打开文件。
vim ~/.gitconfig
# or
code ~/.gitconfig
开始添加你的别名✍️
...
[alias]
st = status
c = commit -m
a = add
cb = checkout -b
您可以按如下方式使用上述别名:
git st # git status
git c "hello world" # git commit -m "hello world"
git a hallucination.py # git add hallucination.py
git cb multi-stage-build # git checkout -b multi-stage-build
还有一个方便的命令:git config --list查看文件内容,包括其他 git 配置。
奖励🛸
带参数的 Git 别名!
我们可以使用 shell 脚本添加参数,从而进一步扩展别名的功能。
这些参数有什么用呢?
我们以向本地仓库添加 Git 远程仓库为例。命令中基本上有两个变量可以作为参数传递,分别是远程仓库名称和项目名称。
git remote add <remote-name> git@github.com:yankeexe/<project-name>.git
我们可以使用匿名 bash 函数来表示上述抽象概念,f()如下所示:
[alias]
ra = "!f() { git remote add $1 git@github.com:yankeexe/$2.git; };f"
` $1and`$2表示函数使用参数的顺序。` $shell`!代表一个 shell 脚本;我们的匿名函数是 `$ f()shell`,我们在脚本末尾立即调用了它。
让我们使用别名:
git ra origin demo-project
这里将使用origin$1 ,因为它是我们传递的第一个参数,并且$2它将是demo-project。
上述命令将转换为:
git remote add origin git@github.com:yankeexe/demo-project.git
结论🚀
希望这篇文章能帮助你改进 Git 工作流程。如有任何疑问或建议,欢迎在评论区留言讨论。
文章来源:https://dev.to/yankee/faster-git-workflow-with-git-aliases-4006