0

如果我使用git notes --ref=$REF edit $COMMIT,原始消息是:

注释(xxx):

#NEW

path/to/file1: your message

path/to/file2: your message

#TEST

path/to/file3: your message

然后消息变成

注释(xxx):

path/to/file1: your message

path/to/file2: your message

path/to/file3: your message

如何避免这种情况?我想保留“#”。

4

1 回答 1

3

如果你builtin/notes.c在 Git 中看一下,你会看到stripspace(&(msg->buf), 1);调用了一个 editor,但stripspace(&(msg->buf), 0);如果消息是在命令行上通过文件传递的。stripspace(..., 1);表示“跳过评论”,这会导致它也删除评论(以 开头的行#),而stripspace(..., 0)表示“不要跳过评论”,因此它们将被包括在内。

因此,在行首创建包含 a 的注释的最佳方法似乎是在命令行上#传递注释或从文件中读取注释。-m 'note contents'-F filename

这适用于 git.git 中最新版本的代码;我已经用 1.8.0 进行了测试。

于 2012-11-15T08:23:16.073 回答