Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
节点:标记之间的git日志_Git_Node.js_Gruntjs - Fatal编程技术网

节点:标记之间的git日志

节点:标记之间的git日志,git,node.js,gruntjs,Git,Node.js,Gruntjs,使用git,您可以在两个标记之间获得相当多的消息日志 git log --pretty=oneline tagA...tagB 我一直在使用一个Ruby Git库,它让我可以在以下方面做同样的事情: git = Git.open(".") logs = git.log.between tagA, tagB 但我现在正试图重写到与Grunt更兼容的版本,并试图找到一种体面的方法来使用node实现这一点。现在我能想到的唯一方法是让节点与终端交互并获得输出,但我认为这不是一个好方法 有什么建议吗?

使用git,您可以在两个标记之间获得相当多的消息日志

git log --pretty=oneline tagA...tagB
我一直在使用一个Ruby Git库,它让我可以在以下方面做同样的事情:

git = Git.open(".")
logs = git.log.between tagA, tagB
但我现在正试图重写到与Grunt更兼容的版本,并试图找到一种体面的方法来使用node实现这一点。现在我能想到的唯一方法是让节点与终端交互并获得输出,但我认为这不是一个好方法


有什么建议吗?

因为我正在创建一个只供我自己使用的工具,所以我可以负担得起使用synchronous shell的费用,所以这就是我最终要做的,因为所有的node git包装器都有点缺少文档(别责怪我,我看到了更好的文档…),而且对于我的需求来说有点过重

使用


重要提示:这不是服务器或应用程序的解决方案!只有在编写部署应用程序或类似的东西时,才可以这样做。

您已经使用了ruby git包装器,是否考虑过寻找node/js包装器?这两种方法看起来有点像样,可能还有更多:,我在这两种方法中都找不到中间方法。。。。
$shell = require("execSync")
result = $shell.exec "cd tmp/demo_git/ && git log --pretty=oneline #{from_tag}..#{to_tag}"