是否有办法使用git为下一次提交设置注释?想象一下这样的事情:
git next-commit "Implement client-side validation"
# implement the feature ...
# commit changes
# equivalent to git commit -m "Implement client-side validation"
git commit -m from-next-commit这背后的动机是,当我编程时,我通常会想到一个特定的特性,但在这过程中,我最终开发了一些其他特性或修复了相关的东西,而我忘记了我正在做的主要任务。
那时,我已经用有用的更改修改了源代码,但我甚至不记得我添加的主要特性是什么,因为它只是一堆更改,我能想到的唯一的提交消息是git commit -m "Update stuff"。设置下一次提交的消息也可以帮助我继续完成我应该做的事情。在任何时候,如果我觉得我已经忘记了主要的任务,并且偏离了其他特性,我最好用git next-commit这样的东西来问git,它可以打印Implement client-side validation。
像这样的功能存在吗?
编辑:看到一些答案后,我想我应该澄清另一件事。理想情况下,此命令还将帮助您跟踪未来提交何时已被使用。例如,如果您两次使用git commit -m from next-commit而之前没有设置新的未来提交消息,那么它应该会失败。
$ git next-commit "Implement client-side validation"
ok
$ git commit -m from-next-commit
ok
# git commit -m from-next-commit
error : already used
$ git next-commit "Optimize get_request"
ok
$ git commit -m from-next-commit
ok发布于 2019-02-18 06:51:52
就我个人而言,我会按照提姆·比格莱森的建议去做,但是如果您愿意使用自定义命令而不是git commit,那么做您想做的事情也就不难了。
也就是说,您可以创建一个定制的git-next-commit脚本,将其放入PATH中,并让它将所需的提交消息写入git根目录中的某个文件中(或者在.git/中)。
然后创建另一个自定义脚本(例如git-commit-from-next,或者只是重用git-next-commit,可能使用命令行选项),该脚本使用先前存储的消息调用git commit并删除文件。如果文件不存在,则打印适当的错误消息。
如果准备-提交-msg钩子看到一条特殊的“从下一个提交”消息,您也可以让它执行您想做的事情。
发布于 2019-02-18 06:16:03
也许可以使用git commit -F <file>从文件中读取注释?
发布于 2019-02-18 06:19:25
老实说,如果您很难记住在当前提交中做了什么,我可能会问您在提交之前是否会处于良好的状态--检查所有代码。也许你应该投资像吉拉这样的发行商。
尽管如此,您可能会在这里发现一个有用的技巧,那就是从一个虚拟提交开始,在那里您只需要在某个地方做一个小小的更改。通过以下方式添加您心目中的“未来”提交消息:
git commit -m 'Implement client-side validation'然后,做好你的工作,完成任务。当提交此工作时,您可以修改以前的提交:
git commit --amend默认情况下,这应该会打开一个编辑器窗口,在该窗口中,您应该已经看到了您未来的提交消息。
https://stackoverflow.com/questions/54741396
复制相似问题