手动更新

更新工作区中的项或撤消提交时,始终有一个或多个项目失败的可能性。 如果来自 Git 分支的传入更新导致工作区中出现不一致或其他难以提前确定的问题,则工作区将无法更新。 当项无法更新时,更新进程将停止。 如果失败的项是正在更新的第一个(或唯一一个)项,工作区仍会与原始分支同步。 如果某项在一个或多个项目成功更新后失败,则会出现某些项已同步,而某些项未同步的情况。 在这种情况下,工作区不会同步到任何 Git 分支。

更新可能由于多种原因而失败。 可能的原因包括但不限于以下问题:

  • 依赖项已更改或删除
  • 已创建循环依赖项
  • 条目已重命名
  • 项数据无效

注意

这与冲突解决不同。 如果对工作区和 Git 分支中的同一项进行了更改,则会导致冲突并禁用更新。 本文讨论即使没有直接冲突,工作区也无法更新时的做法。

错误消息会告知失败的项以及失败原因。

显示更新失败时的错误消息的屏幕截图。

更新失败时,将显示此错误消息。 此后尝试访问工作区的任何用户都会看到以下错误,直到更新成功完成。

显示有人在更新失败后尝试连接到工作区时显示的错误消息的屏幕截图。

选择“查看详细信息”以查看上一条错误消息。

项失败后的 Git 状态

工作区现在包含以下项:

  • 失败前更新的一个或多个项。 这些项与 git 中的项相同,但元数据不会更新。 它们的 Git 状态为“已同步”,但带有三角形警告标志。
  • 失败的项。 此项的 Git 状态为“需要更新”。
  • 可能为项失败时尚未更新的项。 这些项尚未更新,且 Git 状态为“需要更新”。

屏幕底部显示最新同步状态的状态栏为红色,指示部分同步状态。

显示更新失败时屏幕底部状态行的屏幕截图。

更新失败项

若要在自动更新失败后手动更新工作区,请执行以下操作:

  1. 使用显示失败项和错误消息的错误对话框,找出导致更新失败的项以及问题。
  2. 修复 Git 中的问题。 这可能意味着根据具体问题执行以下一项或多项操作:
    • 将项还原到未失败的早期版本
    • 编辑项目解决问题
    • 还原已删除的依赖项
    • 删除依赖于已删除项的不受支持的项
  3. 返回工作区并再次更新整个工作区。

注意事项和限制

一旦某个项失败,更新进程就会失败。 因此,无法知道 Git 分支中的其他项是否也存在问题。 如果要更新多个项,并且多个项都存在问题,则必须对每个失败项重复此过程。

冲突解决