提交消息挂钩中缺少提交消息文件
Commit message file missing in commit-msg hook
我正在尝试编写一个 commit-msg 挂钩来格式化我的提交消息以按最大列宽换行:
#!/bin/bash
format_max_column_width() {
MAX_LINE_LENGTH_CHARS=50
cat "" | grep -v "^Bug: |^Change-Id: |^Signed-off-by: |^CC: " > body
cat "" | grep "^Bug: |^Change-Id: |^Signed-off-by: |^CC: " > footer
fmt -w "$MAX_LINE_LENGTH_CHARS" body > body
cat body > ""
cat footer >> ""
rm body footer
}
format_max_column_width
出于某种原因,当我提交时,出现以下错误,因为 $1 似乎是空的。
cat: '': No such file or directory
cat: '': No such file or directory
.git/hooks/commit-msg: line 9: : No such file or directory
.git/hooks/commit-msg: line 10: : No such file or directory
此外,如果我只是echo
,什么也不会打印出来,证实了这个理论。怎么回事?
在 shell 函数中 </code> 表示 "the first parameter to <strong>the function</strong>",而不是脚本。您需要将第一个脚本参数进一步传递给函数:</p>
<pre><code>format_max_column_width ""
我正在尝试编写一个 commit-msg 挂钩来格式化我的提交消息以按最大列宽换行:
#!/bin/bash
format_max_column_width() {
MAX_LINE_LENGTH_CHARS=50
cat "" | grep -v "^Bug: |^Change-Id: |^Signed-off-by: |^CC: " > body
cat "" | grep "^Bug: |^Change-Id: |^Signed-off-by: |^CC: " > footer
fmt -w "$MAX_LINE_LENGTH_CHARS" body > body
cat body > ""
cat footer >> ""
rm body footer
}
format_max_column_width
出于某种原因,当我提交时,出现以下错误,因为 $1 似乎是空的。
cat: '': No such file or directory
cat: '': No such file or directory
.git/hooks/commit-msg: line 9: : No such file or directory
.git/hooks/commit-msg: line 10: : No such file or directory
此外,如果我只是echo
,什么也不会打印出来,证实了这个理论。怎么回事?
在 shell 函数中 </code> 表示 "the first parameter to <strong>the function</strong>",而不是脚本。您需要将第一个脚本参数进一步传递给函数:</p>
<pre><code>format_max_column_width ""