如何使用 tfs-cli (tfx) 更新本地 TFS 实例的 TFS 扩展?

bro*_*med 6 tfs

我的公司有一个本地 TFS 2017 实例。我知道如何通过 Web 界面安装和更新扩展程序,但这很乏味。我想知道是否有更快的方法来使用tfs-cli.

bro*_*med 6

由于某种原因,我花了一段时间才弄清楚这一点。起初我以为tfs-cli只能用于发布扩展到 Visual Studio Marketplace,但事实并非如此。以下是对本地 TFS 执行此操作的方法:

生成个人访问令牌

您可以按照此处说明进行操作。或者:

  1. 将鼠标悬停在右上角的个人资料图片上。
  2. 选择“安全”。
  3. 如果尚未选择,请选择“个人访问令牌”部分。
  4. 单击“添加”按钮以生成新令牌。
  5. 如果您想限制范围,只需选择“市场(发布)”选项。
  6. 单击“创建令牌”。
  7. 复制它并保存在安全的地方!

登录

在命令行中输入以下内容:

tfx login

系统将提示您输入在上一步中生成的服务 URL 和个人访问令牌。

对于服务 URL,请使用贵公司用于访问 TFS 的任何内容。示例网址:

需要注意的一些事项:

  1. 指定 http/https。
  2. 您可能/可能不需要指定端口号。
  3. 根据您运行的 TFS 2017 版本及其安装方式,您可能需要也可能不需要包含/tfs/在 URL 中。例如,可以/tfs/在安装时摆脱虚拟目录。查看您在浏览器中使用 TFS 时使用的 URL 以及相应的命令。

打包你的扩展

  1. 导航到扩展程序的根目录。
  2. tfx extension create --manifests <manifest-file-name> --rev-version
    • --manifests 标志用于指定清单的文件名,例如 vss-extension.json
    • --rev-version flag 会自动增加你的包的补丁号。

发布(安装/更新)你的扩展

使用该publish命令来安装/更新(它会确定需要完成哪些操作)您的扩展。

tfx extension publish --service-url <tfs-url>

您需要在此处再次指定服务 URL。如果不这样做,tfx将尝试将您的扩展发布到 VSS 市场。

最后,我喜欢的脚本:

rm *.vsix &&    # Remove old packages
tfx extension create --manifests <manifest-file-name> --rev-version &&
tfx extension publish --service-url <tfs-url>
Run Code Online (Sandbox Code Playgroud)