在 Windows 上访问 git commit-msg 中的提交消息

发布于 2024-12-11 05:39:50 字数 386 浏览 0 评论 0原文

我正在尝试编写一个 commit-msg 脚本,该脚本调用 powershell 脚本,并将提交消息作为参数传入。

到目前为止,我可以使用参数执行 powershell 脚本,但我无法弄清楚如何访问 commit-msg 内的提交消息。由于提交尚未完成,我无法使用日志。还有哪些其他选择?

这是到目前为止我在 commit-msg 中的代码:

exec c:/Windows/System32/WindowsPowerShell/v1.0/powershell.exe -Command "& {C:/Windows/System32/WindowsPowerShell/git-pre-commit.ps1 '{the_git_commit_message}'}"

I'm trying to write a commit-msg script that calls a powershell script with the commit message passed in as a parameter.

So far I am able to execute the powershell script with parameters, but I cannot figure out how to access the commit message inside of commit-msg. Since the commit isn't completed yet, I cannot use the log. What other options are there?

Here is the code I have in commit-msg so far:

exec c:/Windows/System32/WindowsPowerShell/v1.0/powershell.exe -Command "& {C:/Windows/System32/WindowsPowerShell/git-pre-commit.ps1 '{the_git_commit_message}'}"

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

也只是曾经 2024-12-18 05:39:51

commit-msg 挂钩 ($1) 的参数是包含该消息的文件的名称。将文件(路径)传递给powershell脚本并将您想要的内容添加到该文件中并退出脚本。

另外,根据您正在执行的操作,您可能需要查看 prepare-commit-msg 挂钩

PS:查看 .git/hooks 下的 commit-msg.sample 文件以获得一些想法。

The argument for the commit-msg hook ($1) is the name of the file having the message. Pass the file (path) to the powershell script and add the content you want to this file and exit from the script.

Also, depending on what you are doing you may want to look at prepare-commit-msg hook

PS: Look at the commit-msg.sample file under .git/hooks to get some idea.

萤火眠眠 2024-12-18 05:39:51

来自 Pro Git 书籍:

整个commit过程完成后,post-commit钩子
运行。它不需要任何参数,但你可以轻松获得最后一个
通过运行 git log -1 HEAD 提交。一般来说,这个脚本用于
通知或类似的东西。

如果我理解正确,您需要实际的消息并将提交消息的内容传递给 powershell 脚本,并且对修改消息不感兴趣。

在这里阅读更多相关信息:

http://progit.org/book/ch7-3.html

干杯

From Pro Git book:

After the entire commit process is completed, the post-commit hook
runs. It doesn’t take any parameters, but you can easily get the last
commit by running git log -1 HEAD. Generally, this script is used for
notification or something similar.

If I understand you correctly you want the actual message and pass the contents of the commit message to the powershell script and not interested in modifying the message.

Read more about it here:

http://progit.org/book/ch7-3.html

Cheers

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文