gpt4 book ai didi

git - 使用 git commit -a -m 时不想使用双引号

转载 作者:太空狗 更新时间:2023-10-29 13:49:41 25 4
gpt4 key购买 nike

我有点厌倦了使用双引号,当我使用git commit时

git commit -a -m "fix xxx error"

当我这样设置别名时:

coam = "!f() { git commit -a -m $1; }; f"

它在我输入时起作用

git coam fix

它提交为

git commit -a -m "fix"

但是如何设置可以处理的命令

git commit -a -m "fix xxx error"

当我只是打字的时候

git coam fix xxx error

我测试

coam = "!f() { git commit -a -m $*; }; f"

但它不起作用!

谢谢!

最佳答案

“我有点厌倦了使用双引号,”<-- 但你别无选择。

这就是 shell 的工作原理:它有一些机制可以使参数包含通常作为输入字段分隔符的字符(提示:这就是 IFS 环境变量被命名为 way 的原因它是),它仍然被将要执行的命令作为参数。

git commit-m 选项接受一个参数。这些双引号是必需的。

唯一可以解决这个问题的方法是拥有自己的小 shell 脚本,它会为您收集这些参数:

#!/bin/bash
exec git commit -a -m "$*"

如果上面的脚本名为 mygitcm 并且在您的路径中,您可以执行以下操作:

mygitcm my commit message here

引用你的例子,我想这会起作用:

coam = "!f() { git commit -a -m \"$*\"; }; f"

(当然,另一个好主意是制作解释性提交消息;))

关于git - 使用 git commit -a -m 时不想使用双引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14258491/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com