解决文件冲突
使用 Team Foundation 版本控制 的优点管理文件是多人可以在文件同时工作。 一个缺点是您有时会需要解决冲突,然后才能 获取、注册、取消搁置、合并或 滚动 您的文件之前。
尽管它可以是令人沮丧遇到冲突,系统提供信息和工具可帮助您了解解决冲突。
提示
默认情况下,系统会自动尝试访问 *** 自动解决所有 *** 冲突,则除非关闭此选项(请参见 提示)。
所需权限
您必须是一个团队项目的 *** 参与者 ***。 请参见 Team Foundation Server 默认组、权限和角色。
您希望做什么?
管理和有关冲突的信息
自动解决所有冲突
自动合并单个冲突
手动解决单个冲突
了解自动选项
了解比较选项
从命令提示工作
获取提示
解决冲突窗口
解决冲突窗口自动当您尝试执行的操作被一个或多个冲突块。
默认情况下,该窗口仅显示由最近尝试的操作引起的冲突。 当窗口处于此状态时,开始的消息: *** 已应用的路径筛选器 ***。 在您的工作区若要显示所有冲突,选择 *** 获取所有冲突 ***。 从开始的消息: *** n冲突 *** 显示。
如果很长时间,则您的工作区中的文件进行更改,新的冲突可能已发生。 若要刷新 *** 解决冲突 *** 窗口中,选择 *** 刷新 ***。
每个冲突包含可以帮助您解决它的信息和有时链接。 获取更多信息,可以选择该冲突并选择:
查看文件的历史记录中的历史记录。 如果引起冲突的操作是合并或回滚,则可以在 历史记录 右侧选择菜单控件然后选择 *** 源历史记录 *** 或 *** 目标历史记录 ***。
请参见 获取某项的历史记录。
查看有关对文件的最新版本的所有更改的详细信息***** 说明 *****,包括做出每项更改,因此,当用户提交事务。 请参见 使用批注查看文件更改。
*** 比较 *** (或在按钮右侧的菜单中选择命令)。 差异 将出现窗口。
自动解决所有冲突
默认情况下系统会自动尝试访问 *** 自动解决所有 *** 冲突,则除非关闭此选项(请参见 提示)。 在解决冲突窗口,可以手动选择 *** 自动解决所有 ***,然后选择:
如果您希望系统尝试使用其试探方法自动解决冲突,请选择**“所有冲突类型”**。
如果您希望系统尝试解决冲突,但又希望排除某些试探方法,请选择**“特定冲突类型”**。
随即显示**“选择要解决的冲突”**对话框。 选中或清除要启用或禁用选项卡,然后选择 *** 自动解析 ***。 有关更多信息,请参见下面 自动解析选项。
系统会尝试自动解决在“挂起的更改”窗口中显示的冲突。 系统无法解决的所有冲突在窗口中将保持。 必须 手动解决 这些冲突。
自动合并单个冲突
如果要尝试解决在所选冲突使用在下面,自动解析选项 描述的所有自动合并选项中选择 *** 自动合并 ***。
提示
可以按和按住Ctrl或shift键然后选择多个冲突。
备注
如果“自动合并”处于禁用状态,则表示必须手动解决此冲突。
手动解决单个冲突
如果系统无法自动解决冲突,或者,如果要确保您了解更改,则必须手动解决冲突。 在每个冲突中,系统会显示可用于解决冲突的操作。 所显示的措施具体取决于冲突类型以及引起冲突的操作。
在合并工具中合并更改
当冲突由冲突的内容更改时引起的,则可以选择 *** 在合并工具中合并更改 ***。
若选择此事件时,将出现窗口。
解决冲突的工作的结果。*** 结果 *** 窗格显示。
此窗口可以:
选择windows窗体中: *** 垂直视图 ***,*** 水平视图 ***,*** 混合视图 ***。
差异和冲突之间导航。
选择项目从文件的左右版本将它们包括在结果中。
键入其他的内容添加到"结果"窗格中的文件。
查看文件的历史记录。 请参见 获取某项的历史记录。
比较文件的各个版本。
说明文件以了解谁做了哪些更改。 请参见 使用批注查看文件更改。
在满足到 结果 窗格的内容时,请选择 *** 接受合并 ***。
了解自动选项
在极端情况下,您可能希望限制 *** 自动解决所有 *** 选项可自动解决冲突的类型。
当您选择 ***** 自动解决所有 *****然后 *** 特定冲突类型 ***时,*** 选择解决冲突 *** 出现对话框。
如果您希望系统自动解决发生的冲突,因为… |
如此示例中所述… |
则选择此复选框… |
---|---|---|
在每个文件版本中进行了互不冲突的内容更改 |
在左侧的文件版本中,在开头添加了零。 在右侧的文件版本中,在末尾添加了三: |
与任何内容更改冲突 |
只对工作区(在获取或签入操作期间)或目标版本(在合并或回滚操作期间)进行了内容更改 |
向工作区或目标版本中添加了四和五: |
只与本地工作区或目标分支中的内容更改冲突 |
只对服务器(在获取或签入操作期间)或源版本(在合并或回滚操作期间)进行了内容更改 |
向服务器或源版本中添加了四和五: |
只与服务器版本或源分支中的内容更改冲突 |
服务器(在获取或签入操作期间)或源分支(在合并或回滚操作期间)中的文件已重命名 |
您签出了一个名为“launch.cs”的文件并对该文件进行了处理。 与此同时,某他人签入了对此同一文件产生影响的变更集。 该变更集未修改该文件内容,但将该文件的名称更改为“start.cs”。 |
因重命名服务器版本或源分支中的文件导致的冲突 |
|
对每个版本的更改产生了相同的文件内容。 可以对文件中的内容进行更改,如以下示例所示: 此选项还可解决由所有其他操作(例如,重命名、删除、取消删除和分支)导致的冲突以及那些将会产生相同文件的冲突。
提示
如果选择此复选框,在继续操作时,系统将通过将服务器版本放置(下载)到工作区上来解决这些更改。
|
相同的更改导致的冲突在服务器和工作区中 |
从命令提示工作
提示
默认情况下系统会自动尝试访问 *** 自动解决所有 *** 冲突。 从菜单栏若要更改选项卡,选择 *** 工具 ***,*** 选项 ***,然后在 *** 选项 *** 对话框中,导航到 *** 源代码管理 ***,*** Visual Studio Team Foundation Server ***。 清除 *** 尝试自动解决冲突,则会生成 *** 复选框。
团队是否需要协作解决大量冲突(例如,可能在大型基本代码的合并操作之后发生)? 如果是这样,共享dev设备的公共工作区可能帮助。 请参见 创建和使用工作区。