我想改进我做git提交的方式,我一直在网上阅读.我在http://chris.beams.io/posts/git-commit/上关注了这个网站,这引导我访问https://git-scm.com/book/en/v2/Customizing-Git-Git-Configuration其中我可以设置我的默认编辑器,但我仍然不明白我如何与提交正文分开编辑主题行.
我习惯做:
git commit -am "message here"
Run Code Online (Sandbox Code Playgroud)
但据我了解更久的提交,我应该使用像vim这样的编辑器(在我的mac上)
axi*_*iac 18
最简单的方法是在git commit没有-m和消息的情况下运行.
(git commit -a是一个快捷方式git add .; git commit)
它将启动一个编辑器,您可以在多行上输入提交消息.然后保存文件,当编辑器退出时,git commit继续并使用文件中的消息.
如果您希望从单个命令执行所有操作(或者您编写需要调用的脚本git commit并且这种交互提交方式不是一个选项),那么您可以使用该-m参数两次提供提交主题和提交消息正文:
git commit -m "this is the subject" -m "this is the body"
Run Code Online (Sandbox Code Playgroud)
-m在命令行中多次使用将消息连接为单独的段落(用空行分隔).这完全可以将主题作为第一个参数-m和消息体作为第二个参数-m.
没有简单的方法在提交消息体中嵌入换行符.使用三次或更多次-m选项将产生一个包含空行的提交消息,这可能不是你想要的.
如果您正在使用Linux或者macOS您选择的shell是bash有一种丑陋但有效的方法来编写包含新行的消息体.将每一行嵌入quotes(")中以允许它们包含空格并连接行,$'\n'这些行是bash在命令行(或脚本)中编写特殊字符的方式.
该命令如下所示:
git commit -m "the subject" -m "the first line"$'\n'"the second line"$'\n'"the third line"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8699 次 |
| 最近记录: |