Visual studio 当服务器和本地版本都错误时,如何解决合并冲突? 我在Visual Studio 2013和Team Foundation Server的企业中工作。我们有一个测试源和一个生产源,我定期了解它们的最新情况。由于只有少数开发人员,我们直接在测试中进行更改,我们没有测试的个人分支(尽管当我们的商店更大时,我们有)

Visual studio 当服务器和本地版本都错误时,如何解决合并冲突? 我在Visual Studio 2013和Team Foundation Server的企业中工作。我们有一个测试源和一个生产源,我定期了解它们的最新情况。由于只有少数开发人员,我们直接在测试中进行更改,我们没有测试的个人分支(尽管当我们的商店更大时,我们有),visual-studio,tfs,Visual Studio,Tfs,所以我在测试中打开了一个文件,对它做了一个简单的更改,保存了它,将它签入测试,并将它发布到生产环境中。当我将测试与生产进行合并时,产生了一个合并冲突。我正在查看“服务器”版本和“本地”版本,两者都不正确。“服务器”版本是我编辑的文件,减去我刚做的编辑。这是有道理的。但“本地”版本是我以前从未见过的,看起来可能是我从未开发过的旧版本。也许这是我的本地副本,但没有更新。但我编辑的本地文件正是我所期望的 那么,是什么原因造成的呢?如何解决此问题?我只想在TFS中获得正确的版本,这样以后就不会被吹走,但

所以我在测试中打开了一个文件,对它做了一个简单的更改,保存了它,将它签入测试,并将它发布到生产环境中。当我将测试与生产进行合并时,产生了一个合并冲突。我正在查看“服务器”版本和“本地”版本,两者都不正确。“服务器”版本是我编辑的文件,减去我刚做的编辑。这是有道理的。但“本地”版本是我以前从未见过的,看起来可能是我从未开发过的旧版本。也许这是我的本地副本,但没有更新。但我编辑的本地文件正是我所期望的


那么,是什么原因造成的呢?如何解决此问题?我只想在TFS中获得正确的版本,这样以后就不会被吹走,但我不知道如何继续

这可能是因为在执行“获取最新版本”选项时,TFS没有正确更新工作区

一种干净的方法是,用更改备份文件,撤消挂起的更改。删除旧工作区,创建新工作区。从服务器获取测试源和生产源的最新版本


编辑带有更改的特定文件,将其签入测试,最后再次与生产进行合并测试。

测试和生产是独立的分支吗?如果您还没有签入任何合并内容。我将撤消任何本地更改,获取两个分支上的最新更改,然后再次尝试合并。撤消测试文件上的更改…获取最新版本,然后转到生产分支,并将其与测试合并…在测试时签入更改,编辑文件并将其与产品合并…我的更改已签入测试,因为我没有理由怀疑有问题。这有区别吗?即使已签入更改,我仍可以撤消更改吗?