[英]How to Override Meteor Core Packages in a Project?
对于Meteor项目,我想更改Meteor Core库文件。
这是可能的,如果是的话,怎么样?
到目前为止,我已经尝试将文件复制到我的项目目录中,希望相应的对象只是从原始文件覆盖,但问题是依赖函数或变量只在本地定义。
然后我尝试将它们git clone
到项目的packages
目录中,就像使用社区包一样,但由于克隆命令失败( fatal: repository ... not found
),并且包也未明确,因此无法正常运行在.meteor / packages文件中调用。
任何想法?
Meteor允许在项目中使用本地包,包括覆盖现有(社区或核心)包的包。
虽然在本地覆盖社区包通常只需要将GitHub存储库克隆(或提取或添加为子模块)到/packages
文件夹中,但核心包当前存在于主流星meteor/meteor
存储库的子目录中,这使得克隆它们变得更加棘手。
覆盖核心软件包可能需要您手动将更改作为Meteor或软件包更新(因为Meteor过去依赖于特定的软件包版本)。
因此,在采取这样的步骤之前,请确保您确实需要这样做 。
确保您不能使用本地文件或您自己的本地软件包进行更改(例如,通过包装或替换功能或对其进行修补)。
我使用了一些方法来覆盖核心包。
如果要将更改贡献给项目,这非常有用。 您应该分叉存储库并克隆自己的fork。
克隆流星存储库:
\n git clone https://github.com/meteor/meteor.git\n
要么
git clone git@github.com:<username>/meteor.git
如果你分叉它
packages
目录中) \n ln -s ../../(...)/meteor/packages/\n当然,您可以签出所需的分支/提交并将它们复制到本地
packages
目录。 有一个巧妙的技巧,允许您使用svn
从GitHub下载给定的目录。
这是通过发出:
svn export https://github.com/meteor/meteor/[trunk|branches/]/packages/
例如:
从devel
分支克隆ddp-client
:
svn export https://github.com/meteor/meteor/branches/devel/packages/ddp-client
或从master
分支:
svn export https://github.com/meteor/meteor/trunk/packages/ddp-client
笔记:
meteor add <package>
)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.