# 更新加载脚本，采用受控编辑

借助 `Qlik 代码` 的受控编辑功能，您可以将应用程序加载脚本的工作副本下载到您的计算机进行本地编辑。这些本地副本通过[绑定](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/QlikCode/code-extension-working-copy.htm#Binding)与源应用程序连接。您可以同步您的本地脚本与远程 Qlik Cloud 版本，通过拉取和推送传入和传出的更改。本地 QVS 文件也可以编辑并绑定到 Qlik Cloud 应用程序中 `Qlik 代码`，从而无需先创建应用程序即可构建本地脚本。

信息注释此工作流允许保存、更新和同步脚本的本地副本，使其与 Qlik Cloud 应用程序同步。对于简单的检查和快速编辑工作流程，请参阅 [直接针对 Qlik Cloud 更新加载脚本](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/QlikCode/code-extension-cloud-backed.htm)。

## 什么是绑定？

在 `Qlik 代码` 中，绑定是本地工作副本的加载脚本（或另一个本地 QVS 文件）与 Qlik Cloud 中的分析应用程序之间的连接。

绑定在以下情况下创建：

* 您下载一个可用的脚本副本用于本地编辑 (参见 [下载脚本的工作副本](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/QlikCode/code-extension-working-copy.htm#WorkingCopy))。

* 您手动将单独的 QVS 文件绑定到现有应用程序（请参阅[绑定现有本地文件](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/QlikCode/code-extension-working-copy.htm#BindOther)）。

创建绑定后，该扩展会将本地文件与 Qlik Cloud 应用程序之间的关系存储在 resource-map.json 文件中，该文件位于 [workspace](https://code.visualstudio.com/docs/editing/workspaces/workspaces) 根目录。

## 下载脚本的工作副本

您可以将您的应用程序的加载脚本的可用副本下载到您的本地计算机。当您执行此操作时，加载脚本的副本将下载到您的[工作区](https://code.visualstudio.com/docs/editing/workspaces/workspaces)（QVS 格式），并自动在本地创建的文件与源应用程序之间创建[绑定](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/QlikCode/code-extension-working-copy.htm#Binding)。

本地工作副本将保存到由默认工作副本文件夹设置（请参阅[设置参考](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/QlikCode/code-extension-settings-reference.htm)）指定的文件夹中，或者如果该设置为空，则保存到[工作区](https://code.visualstudio.com/docs/editing/workspaces/workspaces)根目录。

执行以下操作：

1. 在`VS Code` [资源管理器](https://code.visualstudio.com/docs/editing/getting-started/userinterface#_explorer-view)中，展开Qlik Cloud。

2. 找到一个应用程序，然后右键单击它。

3. 点击 下载工作副本。

   如果您的工作区中已存在一个或多个脚本的本地副本，则会出现一个不同的选项：已下载的资源...。此选项允许您导航到现有本地文件。

下载并绑定本地副本后，您可以编辑它，使用来自远程 Qlik Cloud 版本的传入更改更新它，并将您自己的本地更改推送到远程 Qlik Cloud 版本。请参阅 [在本地和远程版本之间同步更改](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/QlikCode/code-extension-working-copy.htm#Synchronizing)。

## 绑定现有本地文件

您还可以将一个现有的本地 QVS 文件（即当前未连接到任何应用程序的文件）绑定到一个 Qlik Cloud 应用程序，而不会覆盖您的本地内容。[绑定](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/QlikCode/code-extension-working-copy.htm#Binding) 将文件与应用程序及其当前脚本版本关联起来。

执行以下操作：

1. 在 `VS Code` [资源管理器](https://code.visualstudio.com/docs/editing/getting-started/userinterface#_explorer-view) 中，右键单击要绑定的本地文件。

2. 点击 绑定到 Qlik Cloud 脚本。

3. 选择要绑定的 Qlik Cloud 应用程序。

手动绑定文件后，您可以编辑它，使用来自远程的传入更改更新它Qlik Cloud版本，并将您自己的本地更改推送到远程Qlik Cloud版本。请参阅 [在本地和远程版本之间同步更改](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/QlikCode/code-extension-working-copy.htm#Synchronizing)。

## 解绑脚本

使用 Qlik: 从 QCS 资源解除绑定 命令（可通过 [命令面板](https://code.visualstudio.com/docs/editing/getting-started/userinterface#_command-palette) 获取）来移除本地文件与远程版本之间的链接，而不会删除任何一个副本。

## 在本地和远程版本之间同步更改

信息注释您需要有权限编辑应用程序的加载脚本。如果您只有查看权限，您可以以只读模式打开该脚本，但无法编辑。

在您下载或手动绑定一个脚本后，您可以使用 `VS Code` 文本编辑器编辑它。

`Qlik 代码` 提供以下选项：

* 更新本地脚本，使其包含对远程Qlik Cloud版本所做的更改。例如，另一个用户编辑了加载脚本，无论是在 Qlik Cloud 中，还是使用他们自己的 `Qlik 代码` 安装。

* 将您自己的更改推送到远程Qlik Cloud版本。

### 同步单个脚本

您可以单独同步脚本。

执行以下操作：

1. 在 `VS Code` [资源管理器](https://code.visualstudio.com/docs/editing/getting-started/userinterface#_explorer-view) 中，找到您的本地工作副本脚本。

2. 右键单击文件并选择以下选项之一：

   * 从 Qlik Cloud 拉取：更新您的本地副本，使其包含自上次下载或更新以来对脚本所做的任何更改。

   * 将更改推送到 Qlik Cloud：将您的本地更改推送到远程 Qlik Cloud 版本。系统提示您确认替换现有脚本。

### 批量同步脚本

您还可以批量同步您的脚本。当您执行这些操作时，您会推送和拉取您有权访问的所有应用程序和工作副本的更改。

执行以下操作：

1. 在`VS Code` [资源管理器](https://code.visualstudio.com/docs/editing/getting-started/userinterface#_explorer-view)中，展开Qlik Cloud。

2. 在面板工具栏中，选择以下选项之一：

   * the 从 Qlik Cloud 更新所有 icon ()：更新所有本地副本，使其包含自上次下载或更新脚本以来对脚本所做的任何更改。

   * the 将所有更改推送到 Qlik Cloud icon (): 将所有本地更改推送到远程 Qlik Cloud 版本。

### 管理冲突

如果一个脚本在 Qlik Cloud 自上次同步以来发生了更改，并且您也有本地更改，`Qlik 代码` 会检测到冲突并在可能时提供解决选项。这些选项在 `VS Code` 文本编辑器中显示。

* 确认合并：继续执行提议的更改合并。

* 取消合并：拒绝提议的合并并恢复到本地副本。

提示注释`VS Code` 提供原生选项以检测和解决冲突。有关更多信息，请参阅官方`VS Code`文档，网址为[在 VS Code 中解决合并冲突](https://code.visualstudio.com/docs/sourcecontrol/merge-conflicts)。

[在 Qlik 代码 中编辑加载脚本](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/QlikCode/code-extension-edit-load-script.htm)

[执行 Qlik 代码 命令](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/QlikCode/code-extension-commands.htm)