---
title: "Import from Git V1 与 V2"
language: "zh"
url: "https://docs.testany.io/zh/docs/import-from-git-v1-vs-v2/"
markdown_url: "https://docs.testany.io/zh/docs/import-from-git-v1-vs-v2.md"
translation: "https://docs.testany.io/en/docs/import-from-git-v1-vs-v2.md"
last_updated: "2026-03-26T15:39:24+08:00"
---

# Import from Git V1 与 V2

## 1. 概述

现在 `Import from Git` 会并行提供 **V1** 和 **V2**。

当您点击 `Register Test Case` → `Import from Git` 时，Testany 会先弹出版本选择框，让您决定使用哪一种导入方式。

![Import from Git 版本选择](https://docs.testany.io/docs/images/zh/import-git-version-select-zh.png)


> **备注**
>
> `Import from Git V1` 不会下线。如果您所在团队已经建立了稳定的基于凭证的 `Sync Link` 流程，可以继续使用 V1。若您希望使用 GitHub 账号授权、仓库访问范围管理，以及 `Managed Import` 或新的同步生命周期，请选择 V2。


## 2. 什么时候选 V1，什么时候选 V2

| 项目 | V1 | V2 |
| --- | --- | --- |
| 凭证模型 | 通过 Testany Secrets Service 保存 Git 凭证 | 通过 Git 平台账号授权 |
| 仓库访问方式 | 依赖已注册凭证 | 依赖已连接的 GitHub 账号 + GitHub App 仓库访问范围 |
| 当前支持的平台 | GitHub、Bitbucket | 仅 GitHub |
| 更适合 | 已经在用 V1 的团队、偏凭证式流程的场景 | 希望采用 GitHub 原生授权和显式仓库范围控制的团队 |
| 后续维护方式 | 通过重新进入向导更新导入记录 | 通过导入记录详情页进行维护 |
| 导入模式 | 仅 `Sync Link` | `Sync Link` 和 `Managed Import` |

## 3. V2 当前支持哪些平台

在当前版本中，`Import from Git V2` 只支持 **GitHub**。

界面里虽然会显示 `GitLab`、`Bitbucket Cloud`、`Azure DevOps Services` 的 `Coming Soon` / `Request Access` 入口，但它们暂时还不能实际导入。

## 4. 使用 V2 前，先了解这几件事

### 4.1 `Connection Management` 和 `Imports` 是两个独立区域

V2 页面被明确拆成两块：

- `Connection Management`：连接 GitHub 账号、管理仓库访问范围
- `Imports`：新建导入，或进入现有 `Import History`

### 4.2 连上 GitHub 账号，不等于仓库已经可导入

V2 使用的是**两阶段访问模型**：

1. 在 Testany 中连接 GitHub 账号。
2. 在仓库所属的个人账号或组织上，为 `Testany Git Connector` 授予访问权限。

如果第二步没有完成，您在 Testany 中可能已经能看到该 GitHub 账号，但仓库列表依然会是空的。

### 4.3 仓库可见范围是按 installation 管理的

在 V2 中，仓库可见性由 GitHub App installation 的访问范围决定，而不是由 PAT 或手工填写的仓库 URL 决定。

如果目标仓库属于 GitHub 组织，通常要先把目标仓库加入已选范围，Testany 才能看到它。这个动作既可以由 GitHub 组织管理员在组织 installation 中完成，也可以由目标仓库管理员在仓库侧完成。

### 4.4 V2 有两种导入模式

**Sync Link**

- Testany 与 Git 文件建立同步关系
- 执行时直接从 Git 拉取脚本
- 在 `Track Latest` 下，代码总是跟随当前分支最新 commit

**Managed Import**

- Testany 先把代码导入平台内部的 Mirror
- 执行时从 Mirror 拉取脚本
- 在 `Track Latest` 下，仍然需要手动 `Sync` 或 GitHub Webhook 来推进 Mirror

### 4.5 `Track Latest` 和 `Pinned Commit` 是两种不同的维护策略

**Track Latest**

- 跟随所选分支
- 适合希望导入记录持续跟进分支变化的场景
- 可以启用 Webhook

**Pinned Commit**

- 固定在某一个 commit
- 适合更强调可复现性的场景
- 不支持 Webhook 同步

### 4.6 代码更新和关系更新是两件事

在 V2 中，这两层能力被故意分开：

- 代码层更新：最新 commit、Mirror 刷新、手动 `Sync`、Webhook
- 关系层更新：`Import Added Files`、`Mark Source Deleted`

这是 V2 相对 V1 最重要的使用差异之一。新增文件和源端删除文件**不会**自动变成新的 Test Case 或自动删除已有 Test Case。

## 5. 推荐阅读顺序

如果您准备使用 V2，建议按以下顺序阅读：

1. [Import from Git V2：连接 GitHub 并创建导入](https://docs.testany.io/zh/docs/import-from-git-v2-create-import.md)
2. [Import from Git V2：管理 GitHub 连接与仓库访问范围](https://docs.testany.io/zh/docs/import-from-git-v2-manage-connections.md)
3. [Import from Git V2：维护 Sync Link 导入](https://docs.testany.io/zh/docs/import-from-git-v2-manage-sync-link.md)
4. [Import from Git V2：维护 Managed Import 导入](https://docs.testany.io/zh/docs/import-from-git-v2-manage-managed-import.md)
5. [Import from Git V2：常见问题与排错](https://docs.testany.io/zh/docs/import-from-git-v2-faq.md)

如果您会继续使用 V1，请阅读：

- [Import from Git V1（基于凭证的 Sync Link）](https://docs.testany.io/zh/docs/bulk-import-test-cases-from-git.md)

## 本页术语

- [仓库访问范围 (Repository Access Scope)](https://docs.testany.io/zh/docs/glossary.md#repository-access-scope)
- [Testany Secrets Service](https://docs.testany.io/zh/docs/glossary.md#testany-secrets-service)
- [Sync Link](https://docs.testany.io/zh/docs/glossary.md#sync-link)
- [执行 (Execution)](https://docs.testany.io/zh/docs/glossary.md#execution)
- [Managed Import](https://docs.testany.io/zh/docs/glossary.md#managed-import)
- [Mirror](https://docs.testany.io/zh/docs/glossary.md#mirror)
- [Track Latest](https://docs.testany.io/zh/docs/glossary.md#track-latest)
- [Pinned Commit](https://docs.testany.io/zh/docs/glossary.md#pinned-commit)
- [测试用例 (Test Case)](https://docs.testany.io/zh/docs/glossary.md#test-case)
