Node.js 中的 git 命令

2024-04-22

我想知道是否有人知道/进入 npm 包来使用 git 命令。 我有一个nodejs项目,我想执行以下命令:

  • 克隆
  • git 创建分支
  • git pull request - 来自创建的分支

我尝试了一些 npm 包但没有成功。 任何帮助将不胜感激 谢谢


使用外部包: 您可以使用shelljs https://github.com/arturadib/shelljsnpm 包

不使用外部包:利用nodejschild_process模块。下面是实现

1.exec_process.js

var exec = require('child_process').exec;

var result = function(command, cb){
    var child = exec(command, function(err, stdout, stderr){
        if(err != null){
            return cb(new Error(err), null);
        }else if(typeof(stderr) != "string"){
            return cb(new Error(stderr), null);
        }else{
            return cb(null, stdout);
        }
    });
}

exports.result = result;

2.临时文件

#! /usr/bin/bash
pwd
git --version

3.app.js

var execProcess = require("./exec_process.js");
execProcess.result("sh temp.sh", function(err, response){
    if(!err){
        console.log(response);
    }else {
        console.log(err);
    }
});

要运行该应用程序,您可以尝试node app.js Output:

/root
git 版本 1.8.1.2

同样,您可以在 shell 脚本文件中添加任何命令并使用 node 运行它。演示和源代码发布于runnable http://goo.gl/EZZ7fP.

建议检查git-extras https://github.com/tj/git-extras它涵盖了通过命令行使用 git 的所有用例。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Node.js 中的 git 命令 的相关文章

  • nodejs googleapis,authClient.request 不是函数

    我正在像这样的一个函数中创建一个 oauth2client 并返回它 实际上 我确实传递了客户端 ID 秘密 重定向 URL 和凭据 据我检查 这些都是正确的 var OAuth2 google auth OAuth2 var oauth2
  • Nodemon - 使用配置文件指定扩展监视列表

    有没有办法使用配置文件而不是命令行来指定监视列表 Nodemon 文档中的命令行方法 我尝试使用nodemon json配置文件包含以下内容 ext js json hbs html 返回 扩展名匹配 错误 然后我尝试将配置添加到packa
  • 如何从 docker 容器运行 webpack 构建?

    我正在制作的应用程序是用 ES6 编写的 其他好东西是由 Docker 容器内的 webpack 转译的 目前 一切工作从创建内部目录 安装依赖项到创建编译的捆绑文件 当运行容器时 它说 dist bundle js 不存在 除非我在主机目
  • 如何在前端和后端之间共享javascript代码(ES6)

    这是 ES6 特定的副本这个所以线程 https stackoverflow com questions 3225251 how can i share code between node js and the browser 其中详细介绍
  • React Native:即使文件不存在,也会出现 hprof 文件太大错误

    当我尝试跑步时git push origin master在我的 React Native 应用程序中 我得到 file android java pid60072 hprof is 564 94 MB this exceeds GitHu
  • 如何在Windows Git shell中运行./script.sh?

    也许这很尴尬 但是当我在 Git shell 中工作时 我无法在 Windows 上运行 sh 文件 也许我必须安装一些东西 但我认为 Git 会支持 bash 命令 我知道 Windows 不使用 sh 文件 我正在执行安装步骤游戏结束
  • 使用 Sequelize 计算关联条目数

    我有两张桌子 locations and sensors 每个条目在sensors有一个外键指向locations 使用 Sequelize 如何获取所有条目locations以及条目总数sensors与每个条目相关联locations R
  • 如何对 git 子模块使用相同的协议?

    在 git 存储库 R 中 我有一个使用以下命令初始化的子模块 git submodule add git mygitserver 现在用户刚刚使用克隆 Rhttps并在运行时出现错误 git submodule init git subm
  • 将新更新从原始 GitHub 存储库提取到分叉的 GitHub 存储库

    我在 GitHub 上分叉了某人的存储库 并希望使用原始存储库中的提交和更新来更新我的版本 这些是在我分叉我的副本后制作的 如何提取在源中所做的更改并将它们合并到我的存储库中 您必须将原始存储库 您分叉的存储库 添加为远程存储库 来自有关分
  • socket.io 服务器的 Node.js 客户端

    我有一个正在运行的 socket io 服务器和一个带有 socket io js 客户端的匹配网页 一切正常 但是 我想知道是否可以在另一台机器上运行一个单独的 node js 应用程序 该应用程序将充当客户端并连接到提到的 socket
  • 如何使用restify上传文件

    我正在尝试使用 Restify 模块将图像文件上传到 Rest 服务器 更具体地说是 Confluence 但出现断言错误 我不确定我是否使用正确的方法将文件上传到 REST 服务器 有人能指出我正确的方向吗 这是我的尝试 var rest
  • 运行 npm install 时出错 Error: 404 Not Found: 7zip-bin@~4.1.0

    当我运行 npm install 时 我看到此错误 3 verbose stack Error 404 Not Found 7zip bin 4 1 0 2293 verbose stack at fetch then res C cygw
  • 从字符串中删除货币符号并使用 Javascript 中的单行转换为数字

    我下面有一个字符串 它是以英镑为单位的价格 我想删除货币符号 然后将其转换为我可以用来与另一个值进行比较的数字 价格 例如 X gt Y 14 50 我之前已将字符串转换为用于货币的数字 var priceNum parseFloat pr
  • 如何归档旧的 git 标签?

    我的 git 存储库中有一些不再重要的旧标签 我想存档标签 以便在运行 git tag 时默认情况下它们不会显示 我不想删除它们 因为我想保留历史记录 我怎样才能做到这一点 可以将标签保留在存储库中并避免将它们列为标签 它还可以避免默认克隆
  • git 无法暂存文件,将所有文件显示为重复,但字符大小写不是问题

    就我而言 我对我的文件之一进行了简单的一项更改 并想提交我的更改 但注意到 commit am 没有添加 提交该文件 发出 git 后ls files stage 我看到项目中的所有文件可能都显示为重复项 这是其中一个文件的示例 10064
  • Node.js 和 Express:异步操作后如何返回响应

    我是 Node js 新手 所以我仍然对异步函数和回调很感兴趣 我现在的难题是如何在异步操作中从文件读取数据后返回响应 我的理解是发送回复的工作方式如下 这对我有用 app get search function req res res s
  • sh:1:节点:权限被拒绝

    尝试在 ubuntu 18 04 上运行此命令 npm install g pngquant bin 但我得到了这个错误 fetchMetadata sill resolveWithNewModule email protected cdn
  • 使用 Dropbox 作为跨多台机器的 git 工作目录 - 提交不能完美同步

    首先 我想强调这个问题与在 Dropbox 上托管我的中央存储库无关 而且我对使用 git 还很陌生 我能找到的其他涉及 Dropbox 和 git 的问题都没有真正回答我的问题 它们要么是关于使用 Dropbox 托管您的存储库 要么是关
  • 从 Jenkinsfile 中获取有关其他分支的信息

    Jenkins Blue Ocean 与链接的 Bitbucket Server 实例在同一本地网络上运行 Jenkins 中的多分支项目能够为本地 Bitbucket 服务器上链接的 Bitbucket 存储库的每个分支创建一个分支 但在
  • 垃圾收集器不适用于 NodeJS / Chrome 中的类型化数组

    我最初将其记录为原项目中的一个问题 https github com nodejs help issues 3590 它立即转移到帮助主题 没有很好的解释 所以现在我想在这里提问 如果我们在 NodeJS v14 v16 v17 中运行以下

随机推荐

  • 如何在vaadin中播放视频?

    我使用了两个视频组件 Video video new Video 并嵌入 Embedded embed new Embedded my video new ExternalResource yyy xxx mp4 embed setMime
  • 连接每第 n 行

    我在矩阵中得到了一个数据集 如下所示 从 Excel 导入 matrix Cat1 1 2 3 4 Cat2 9 10 11 12 Cat3 17 18 19 20 Cat1 5 6 7 8 Cat2 13 14 15 16 Cat3 21
  • java项目中在哪里编写和存储mongoDB的map/reduce函数

    对于在 Java 项目中的何处以及如何编写和存储 javascript map reduce 函数以便与 MongoDB 数据库一起使用 有人有任何建议或知道任何最佳实践吗 我正在寻找的标准是 在编写和编辑函数时 我希望受益于 IDE 提供
  • 在Microsoft Surface平台上使用WPF扩展器控件

    我正在尝试在表面应用程序中使用 Expander 控件 我看到它不是表面控件 因此应用程序编译并显示控件 但触点不起作用 无论如何 我可以修改接触事件并使其在表面应用程序中工作吗 为此 您所要做的就是更改Expander的模板使用 Surf
  • 如何在Python中的二值图像上使用kmeans聚类?

    我试图对两个不同的人采取二元面具 其他一切都是黑色的 现在我想使用将每个人分组到他们自己的集群中K means这样我最终就可以在它们周围绘制边界框 这是我到目前为止的代码 def kmeans img k values range 1 5
  • WPF 绑定 - 空字符串的默认值

    如果绑定字符串为空 是否有标准方法为 WPF 绑定设置默认值或后备值
  • 如何在cx_Oracle中使用Pandas Write_Frame将结果导出到Oracle数据库

    我正在尝试将 Pandas DataFrame 导出到 Oracle 数据库 我在 Pandas 中遇到了 Write Frame 函数 这听起来正是我所需要的 但是 我在网上进行了大量搜索 但无法使其发挥作用 我已经导入了 cx Orac
  • 在 Windows 上使用 OpenBLAS 安装 numpy 的教程

    拜托 我这里确实需要一盏灯 我想使用良好的 BLAS LAPACK 库安装 numpy在 Windows 上 但绝对没有页面足够好地解释该过程 看来 OpenBLAS 是一个又好又快的选择 目标是将 theano 与 keras 一起使用
  • 将下拉菜单添加到 ASP.Net Core Web 应用程序中的导航栏(引导程序)

    在 Visual Studio 中 我创建一个新的 ASP Net Core Web 应用程序 然后我添加一个下拉菜单 根据 Bootstrap 文档 https getbootstrap com docs 5 1 components n
  • 如何从Play缓存中获取对象(scala)

    如何从Play缓存中获取对象 scala 设置代码 play api cache Cache set mykey98 new Product 98 0 获取代码 val product1 Option Any play api cache
  • Twitter 推文后绑定事件 ( twttr.events.bind ) 不起作用

    我有这个简单的代码 应该提醒 我刚刚发推文 但似乎不起作用 我已经尝试了所有示例 甚至访问此链接寻求帮助https dev twitter com discussions 671 https dev twitter com discussi
  • 如何访问 ItemsControl 的子项?

    如果我有一个源自ItemsControl 我可以访问它的子集合 以便我可以循环它们来执行某些操作吗 我目前似乎找不到任何简单的方法 类似的解决方案Seb s https stackoverflow com a 1000438 3195477
  • 如何去掉 Matlab 单元格中的双引号?

    我在 Matlab 中有一个单元格数组 单元格中的所有元素都表示为 something 我怎样才能创建一个数组 something 这里有两个解决方案 strrep删除所有双引号实例 同时regexprep只删除字符串开头和结尾的双引号 感
  • 生成的 pdf 中的图像损坏了发送到服务器的 pdf

    我正在使用 jsPDF 在 Web 应用程序中创建 PDF 文档 将该文档发送到 Perl 并让 Perl 通过电子邮件发送它 效果很好 但是 当我将图像添加到 PDF 文档时 它不再起作用 因为 Adob e Reader 说该文件已损坏
  • WebSocket Stomp over SockJS - http 自定义标头

    我在 javascript 客户端中使用 stomp js 而不是 SockJS 我正在使用连接到 websocket stompClient connect function frame stomp over sockJS 连接有 2 个
  • 从节点树中获取总和

    我正在学习php 我有这个结构 company 1 10 all 50 company 1 1 10 all 20 company 1 1 1 10 all 10 company 1 2 20 all 20 每家公司可能有多个子公司 也可能
  • 切换div的可见性属性

    我的 div 中有一个 HTML 5 视频 然后我有一个自定义播放按钮 效果很好 我将视频的可见性设置为加载时隐藏 单击播放按钮时可见 再次单击播放按钮时如何将其恢复为隐藏 function showVid document getElem
  • 使用 linq 将数据集列表

    我有一个DataSet我想转换DataSet into List
  • 云函数在运行所有代码之前结束

    我正在尝试创建一个云函数 但它在 firebase 日志中 在执行所有任务之前显示 已完成 这是我的代码 export const count functions pubsub schedule 0 8 timeZone Europe Br
  • Node.js 中的 git 命令

    我想知道是否有人知道 进入 npm 包来使用 git 命令 我有一个nodejs项目 我想执行以下命令 克隆 git 创建分支 git pull request 来自创建的分支 我尝试了一些 npm 包但没有成功 任何帮助将不胜感激 谢谢