---
title: "Import from Git V2：维护 Sync Link 导入"
language: "zh"
url: "https://docs.testany.io/zh/docs/import-from-git-v2-manage-sync-link/"
markdown_url: "https://docs.testany.io/zh/docs/import-from-git-v2-manage-sync-link.md"
translation: "https://docs.testany.io/en/docs/import-from-git-v2-manage-sync-link.md"
last_updated: "2026-03-26T15:39:24+08:00"
---

# Import from Git V2：维护 Sync Link 导入

## 1. Sync Link 到底是什么

`Sync Link` 会在以下对象之间建立持续关系：

- 一条 Testany 导入记录
- 被选中的 Git 文件
- 由这些文件创建出来的 Test Case

在这种模式下，执行时读取的是 Git 中的脚本，而不是 Testany 内部的 Mirror。

## 2. 先认识详情页结构

进入 `Import History`，打开带有 `SYNC LINK` 标识的记录。

![Sync Link 导入记录详情](https://docs.testany.io/docs/images/zh/import-git-v2-sync-link-detail-zh.png)

这类详情页通常包含：

- `Basic Info`
- `Remote Code Status`
- `Pending Relation Changes`
- `Associated Files`
- `GitHub Webhook Sync`
- `Sync History`
- `Danger Zone`

## 3. Sync Link 在 Track Latest 下怎么工作

当导入记录处于 `Sync Link + Track Latest` 时：

- 执行时总是跟随当前分支的最新 commit
- 详情页**不会**提供代码层的 `Sync`
- 新增文件和源端删除文件仍然需要您手动处理

`Remote Code Status` 区域会显示：

- `Current latest commit`
- `Relation baseline commit`
- `Last change detected at`


> **备注**
>
> 这是 V2 最容易被误解的点之一。`Track Latest` 并不等于“自动把新文件变成新的 Test Case”，也不等于“自动处理已删除文件”。


## 4. Sync Link 在 Pinned Commit 下怎么工作

当导入记录处于 `Sync Link + Pinned Commit` 时，这条记录会被锁定在某个 commit 上。

详情页会提供两个维护动作：

- `Switch Commit`
- `Switch to Track Latest`

这个模式不支持 webhook 同步，也不支持代码层同步。后续如果想前进，只能显式切换 commit，或退出 pinned 模式。

## 5. 关系层变化必须显式处理

在 `Pending Relation Changes` 中，Sync Link 会把“关系维护”与“代码跟踪”明确拆开。

### 5.1 Import Added Files

当最新快照发现有新的受支持文件已经落在导入根目录下，但尚未被纳入当前导入记录时，请使用 `Import Added Files`。

这个动作会创建：

- 新的 Test Case
- 当前导入记录下的新 binding

### 5.2 Mark Source Deleted

当某个之前已经跟踪的文件在 Git 源端中已经不存在时，请使用 `Mark Source Deleted`。

这个动作会：

- 把对应 binding 标记为 `source_deleted`
- **不会**自动删除 Test Case

如果这个文件还被流水线引用，建议先评估影响再确认。

## 6. GitHub Webhook Sync 怎么用

只要导入记录处于 `Track Latest`，就可以配置 `GitHub Webhook Sync`。

在 Sync Link 模式下，它的作用是：

- 接收 GitHub push 事件
- 在需要时触发同步检查

它**不会**直接替您创建新的 Test Case，也不会自动删除已有 Test Case。

### 6.1 配置步骤

1. 在 Testany 中点击 `Configure Webhook`
2. 复制生成的 `Webhook URL`
3. 复制生成的 `Secret`
4. 进入 GitHub 仓库的 webhook 设置页面
5. 用上述 URL 和 Secret 配置 `push` webhook
6. 回到 Testany 验证投递情况

### 6.2 Tracking Scope

Webhook 面板还支持配置 include / exclude 形式的 tracking scope。如果您只希望仓库中的一部分路径触发同步检查，可以在这里收窄范围。

### 6.3 Pinned 模式限制

如果当前记录固定在某个 commit 上，Webhook 同步不可用。必须先切回 `Track Latest`。

## 7. 查看 Sync History

使用 `Sync History` 可以追踪这条记录过去的同步检查结果，例如：

- Testany 上一次什么时候检测到上游代码变化
- 某次同步检查是否失败
- 当前关系快照是否已经过期

## 8. 删除 Sync Link 导入记录

在 `Danger Zone` 中，`Delete Import History` 会删除这条导入记录，并删除所有关联的 Test Case。


> **警告**
>
> 这个操作不可撤销。删除前请先检查是否仍有流水线引用，以及业务侧是否仍然需要这批用例。

## 本页术语

- [测试用例 (Test Case)](https://docs.testany.io/zh/docs/glossary.md#test-case)
- [执行 (Execution)](https://docs.testany.io/zh/docs/glossary.md#execution)
- [Mirror](https://docs.testany.io/zh/docs/glossary.md#mirror)
- [Sync Link](https://docs.testany.io/zh/docs/glossary.md#sync-link)
- [路径（Path）](https://docs.testany.io/zh/docs/glossary.md#path)
