# 快速上手

开始使用 svrx 吧！

## 安装 svrx

我们推荐使用 cli 工具来管理和使用 `svrx`， 全局安装 cli 后你将可以在系统的任意地方使用 `svrx`。

```bash
npm install -g @svrx/cli
```

注意： cli 的作用是安装和加载你指定的`svrx`版本，这与 cli 本身的版本无关。

`@svrx/cli` 将安装的 `svrx` 包存储在 `~/.svrx`， 你可以通过设置 `SVRX_DIR` 环境变量来改变这个存储路径。

## 用 svrx 启动你的工程

### 常用指令

`@svrx/cli` 提供了以下几个常用指令：

```bash
svrx                    # 启动svrx服务
svrx serve              # 同svrx（serve命令可省略）
svrx --version          # 查看 cli 及当前使用的 svrx 版本
svrx --help             # 命令及参数提示
```

### 在工程中使用 svrx

#### 启动服务

开始前，首先你需要进入到你的工程目录，我们假设你的工程中已经有一个 `index.html`：

```bash
cd your_project
ls # index.html
```

无需经过任何配置和传参，直接运行`serve`命令即可开启一个简单的本地服务器：

```bash
svrx
```

此时访问 <http://localhost:8000> ，就可以看到 `index.html` 中的内容了。

#### 使用参数

如果需要对 `svrx` 进行配置，可以通过命令行传参来实现：

```bash
svrx --port 3000 --https --no-livereload
```

详细的参数列表可以在[这里](https://svrx.gitbook.io/docs/zh/guide/option)查看。

#### 配置持久化

当然，你也可以在你的工程目录下建立 `.svrxrc.js` 或 `svrx.config.js` 配置文件，将上面的命令行参数持久化下来：

```js
// .svrxrc.js
module.exports = {
  port: 3000,
  https: true,
  livereload: false
};
```

然后直接运行 `serve` 命令， `svrx` 会自动读取你的配置文件。

#### 全局配置

有些时候，你可能会有要全局配置某个参数的需要。 比如，我们假设，你的全部工程都需要默认使用 `https` 协议。 在每个工程中单独设置 `https` 为 `true` 太麻烦了， 这个时候你可以把全局配置文件放到开头提到的 svrx 包存储目录中，默认是 `~/.svrx/config`：

```js
// ~/.svrx/config/.svrxrc.js
module.exports = {
  https: true,
};
```

是的，全局配置文件和工程目录中的配置文件结构是一模一样的。 下一次，不管你在哪个工程启动 svrx，都会默认启用 `https` 协议。

不过，全局配置的优先级是最低的，你可以随时在工程中通过命令行参数或者配置文件对全局配置进行覆盖。

### 其它指令

另外，如果你需要关心 `svrx` 的版本安装情况，或是想安装某个特定的 `svrx` 版本，那么你还可以使用下面这些指令：

```bash
svrx ls                   # 查看所有本地已安装的svrx版本
svrx ls-remote            # 查看所有已发布的svrx版本
svrx install <version>    # 安装某个<版本>的svrx
svrx remove <version>     # 从本地移除某个<版本>的svrx
svrx remove <pluginName>  # 从本地移除某个插件包的缓存文件
```

> 可以使用 `svrx <command> -h` 查看指令详情及提示信息
