在我的应用程序上工作时,如何增强第三方npm模块在github上提交PR
我会说我仍然是使用git和开发web应用程序的初学者。 我几次遇到这个问题,想问问社区什么是解决问题的首选方法。 问题是让我们说我正在一个Web应用程序MyWebApp
,它导入几个npm模块。 假设它使用第三方npm模块Module1
。 现在,我需要Module1
的一些function,所以我想自己添加这些function,并在完成后提交一个PR。 现在,通常node_modules
目录包含在.gitignore
文件中,所以git不会跟踪我在node_modules目录下直接进行的更改。 此外,我需要从原来的Module1
回购分叉回购,以便能够提交公关。 所以,我这样做,并更新我的package.json
来说Module1: "username/Module1
,克隆在一个单独的目录分叉repo,并开始添加到那里,当我做npm update Module1
。问题在于,由于添加一个新特性是一个迭代过程,因此往往在克隆的repo中添加一些东西是非常大的,推送更改,然后运行npm update Module1
来发现你错过了一个更小的东西,整个事情再次启动。
人们如何解决这个问题? 他们是否克隆了在Web应用程序中node_modules
目录本身中派生的Module1
的回购? 我不确定这是否会奏效。 请分享您的解决scheme。 谢谢!
我喜欢这个问题,因为它是一个正常问题的反转,其中人们正在尝试使用git子树作为项目依赖项,并且从不向子树反向提交提交。 在他们的情况下,他们应该使用像npm这样的包pipe理器。 你有相反的情况。 不要将这些包作为一个依赖包,而应该将它们作为子树移植到父项目存储库中。 然后,您可以轻松地将Google提交的步骤反向提交到您的软件包克隆的子树存储库,最后向供应商打开一个拉取请求。
- npm安装从github库不安装devDependencies
- 让npm从Git仓库获取最新的软件包
- npm模块版本与git中的自动合并
- 将创作的yeoman生成器的更新应用到npm全局安装/更新
- AWS Elastic Beanstalk:我是否必须使用完整的“/ node_modules”和“/ bower_components”来部署我的应用程序,并编译sass和其他依赖项?
- 无法检测到设置buildpack https://github.com/jasonswett/heroku-buildpack-nodejs
- 如何使用Node.js删除远程分支?
- ASP.NET Core MVC项目中的node_modules文件夹
- 有没有办法指定哪个ssh密钥应该用于npm安装