我正在创建一个全局npm包。(我用来部署软件,而不是库)
它有一个config/文件夹,里面有一个config.json.sample。用户将其重命名为config.json并输入他的配置。
如果我执行npm更新-g mypackage,则会覆盖整个文件夹:
- config.json.sample被包中的替换(好!)
- 我的问题是:config.json(由用户创建,包中不存在)被删除
我希望用户创建的配置文件在更新后保持不变
有没有任何方法(npm脚本、标记文件为config等)可以使我的包中用户创建的文件在更新中持久存在?
为了简化跨平台/权限管理,我真的不想把这个配置文件放在包外(例如/home/user/)
关于如何部署应用程序的描述听起来像是在反对npm的设计。。。
最好的方法是让你的用户创建一个新项目,并将你的包作为依赖项包含在其中,然后在你的模块内部提供一种接受外部配置文件的方法。。。
否则,你在这里所说的听起来像是"侵入"已经发布的包并修改其内容,这不是npm用于