由于 NativeScript 是一个开源项目,您可能想知道如何将代码库获取到本地机器并开始贡献。或者,您可能只想尝试即将在下一个版本中发布的最新功能。无论哪种方式,我都会向您展示如何从 GitHub 上的 nativescript-cli 代码库中获取最新版本,并在您的机器上运行多个版本的 CLI。
您是否已生成 SSH 密钥并将其保存在您的 GitHub 帐户中?如果您不知道我在这里问什么,那么请继续阅读。
您是否安装了 Grunt?Grunt 是构建 TypeScript 代码所必需的,安装起来非常容易。如果您没有安装它,请从步骤 1 开始。否则,您可以直接进入步骤 2。
如果您已经安装了 Grunt,那么您可以跳过此步骤。对于那些没有安装 Grunt 的人,您可以运行以下命令。如果您使用的是 Mac 或 Linux 机器,那么您应该使用 sudo 命令以 root 身份安装。如果您使用的是 Windows,那么您不需要使用 sudo。
sudo npm install grunt -g
您需要从 GitHub 上托管的代码库中获取最新的可用代码,以便运行 CLI。转到您保存宝贵代码的目录,然后运行以下命令
这将为您创建 nativescript-cli 目录,并从 GitHub 下载所有代码
切换到这个新目录
cd nativescript-cli
您是否已经是 GitHub 大师,并在您的 GitHub 帐户中存储了 SSH 密钥?如果是,那么请查看此步骤并继续下一步。如果您不知道我在说什么,我们需要使用 智能 Git 协议,这需要您的帐户使用密钥进行签名。以下是您需要执行的操作。
使用您的 GitHub 帐户电子邮件地址生成密钥
ssh-keygen –t rsa –b 4096 –C [email protected]
当提示您输入保存密钥的文件时,默认将是 ../.ssh/id_rsa。继续使用默认值。您还会被要求输入密码。请记住您在这里输入的内容,因为您肯定需要它。
验证 SSH Agent 是否正在运行
eval “$(ssh-agent -s)”
如果代理正在运行,则进程 ID 将输出到控制台。
将 SSH 密钥添加到 SSH Agent
ssh-add ~/.ssh/id_rsa
此步骤将要求您输入您在上一步骤中记住的密码。您还记得密码了吗?
将新的 SSH 公钥添加到您的 GitHub 帐户
将公钥文件的内容复制到剪贴板
pbcopy < ~/.ssh/id_rsa.pub
转到您的 GitHub 帐户,然后在包含您图片的下拉菜单中找到“设置”
在设置页面上,单击左侧窗格中的“SSH 和 GPG 密钥”菜单项。
单击“新增 SSH 密钥”按钮
为您的密钥命名,我通常使用我的机器名称,例如“Alex Mac”
将剪贴板内容粘贴到“密钥”字段中。它应该看起来像这样,但当然要用您自己的公钥信息替换。
单击“添加 SSH 密钥”按钮保存密钥
我们需要通过智能 Git 协议添加子模块,以完成构建 NativeScript CLI。
git submodule update –init
现在我们已经将 SSH 密钥添加到我们的 GitHub 帐户,此命令应该在没有权限错误的情况下执行,并下载所有正确的对象。如果您在此处遇到权限错误,请查看步骤 3。
运行以下命令以从 NPM 获取 package.json 文件中列出的缺失的依赖项。
npm install
最后,使用预配置的 Grunt 命令构建所有内容。当然,您必须在执行此操作之前安装 Grunt。如果没有,命令行将显示错误。
grunt
您已经完成了设置。
要检查您刚构建的 CLI 的版本,请从 bin 目录运行 tns 命令
bin/tns --version
您应该看到版本是 master 分支中可用的最新版本。
现在,如果您想使用此最新版本在 iOS 模拟器中运行您的 NativeScript 项目,例如,您只需从项目目录调用 tns 命令,如下所示
PATH_TO_CLI_FOLDER/bin/tns run ios --emulator
如果您想观看视频教程以了解如何执行这些步骤,您可以 在这里观看。