如何增强第三方NPM模块在处理我的应用程序时在GitHub上提交PR



我会说我仍然是使用git和开发Web应用程序的初学者。我现在已经遇到了几次这个问题,想问社区解决问题的首选方法是什么。问题在于,假设我正在使用导入一些NPM模块的Web应用程序MyWebApp。假设它正在使用第三方NPM模块Module1。现在,我需要Module1中的几个功能,这些功能目前还不存在,因此我想自己添加这些功能并在完成后提交PR。现在,通常node_modules目录包含在.gitignore文件中,因此Git不会跟踪我在Node_modules目录下直接进行的更改。此外,我需要从原始Module1储备金中订购一个存储库,以便能够提交PR。因此,我这样做并更新我的package.json以说Module1: "username/Module1并在单独的目录中克隆叉子仓库,然后开始添加到其中的功能中,当我进行npm update Module1时,我将获得的功能。这是问题所在的地方。由于添加新功能是一个迭代过程,因此在克隆的仓库中添加一些东西,推动更改然后运行npm update Module1只是发现您错过了更多的小事情,而整个事情再次开始。<<<<<<<<<<

人们如何解决这个问题?他们是否在Web应用程序中的node_modules目录本身中克隆了Module1的存储库?我不确定这是否会起作用。请分享您的解决方案。谢谢!

我喜欢这个问题,因为它是对正常问题的反转,人们试图将Git子树用作项目依赖性,而从不向子树进行投资。就他们而言,他们应该使用NPM等软件包管理器。您的情况相反。您不应将这些软件包作为依赖关系,而是将其作为子树嫁接到父项目存储库中。然后,您可以轻松地搜索用于备份的步骤提交给您的软件包克隆的子树存储库,最后向供应商打开拉的请求。

相关内容

最新更新