gpt4 book ai didi

c# - 如何快速有效地取消搁置我在 VS2010 中的代码?是否可以?

转载 作者:行者123 更新时间:2023-11-30 19:44:25 24 4
gpt4 key购买 nike

我最近读到有关搁置的内容,认为这是一个非常有用的概念。所以,下次有人带着我的应用程序中的错误来找我时,我搁置了我正在做的大量工作,修复了错误(对类进行了大约 30/40 的更改,也做了一些重构)并检查了修复代码。

我现在想取消搁置我正在处理的代码,但同时保留我所做的更改。问题是,我已经对服务器上的文件进行了这些广泛的更改,这些更改还没有被搁置。

我可以在这里做什么?似乎需要数小时/数天才能再次合并所有内容。我知道 Eclipse 有一个很棒的功能,您可以在其中比较两个文件,并针对每次更改决定是使用服务器上的版本还是本地版本。像这样我可以选择上架版本或本地版本的东西是完美的。

这里有什么可以让我的生活更轻松,还是我注定要查看搁置集,查看每个有冲突的文件,查看服务器版本,查看本地版本,将本地版本的部分复制到记事本文件,将它们复制到服务器版本中......等等等等。看起来一团糟。

谁能帮帮我?

最佳答案

您应该被要求只选择服务器版本或本地版本。您应该能够像您习惯的那样使用三向合并工具来解决冲突。

听起来您正在遵循此处推荐的做法:

  • 如果您有一些文件,假设它是最新的版本 2,并且您开始编辑它,您将对该文件有待处理的更改。
  • 当您搁置该文件(撤消挂起的更改)时,您将回到没有挂起的更改的版本 2。
  • 如果您编辑该文件并将其 checkin ,服务器将处于新版本(假设是版本 3)
  • 如果您随后取消搁置现有的搁置集,您的更改将再次针对版本 2,这意味着当您的更改针对不是最新的版本被挂起时:

    Source Control Explorer

可以理解,这意味着您有冲突。当您执行“获取最新”或“ checkin ”时,您将能够解决这些冲突。这些应该显示在 Visual Studio 底部的 View 中:

Resolution Options

正如您所注意到的,有选择服务器版本和保留本地版本的选项。但是您也应该有机会进行 AutoMerge(如果更改可以被自动合并,即您没有在服务器和本地文件中都发生更改的文件区域)和 Merge合并工具的变化(这将打开一个三向合并工具。)

如果您在合并工具中选择合并更改,您将获得内置的三向合并工具:

3-Way Merge Tool

如果您不喜欢内置的 3 向合并工具(我不喜欢 2010 中包含的工具,VS 2012 包含了更好的体验),您可以插入Visual Studio 选项中的任何三向合并工具:

Configure Merge Tool

如果完全没有 Merge In Merge Tool 选项,TFS 可能认为您正在处理二进制文件。在 TFS 中,当文件被标记为二进制时(更准确地说,当“文件合并”设置为“禁用”时),您将无法选择自动合并这些文件,或在合并工具中合并它们。这是一种优化,可避免在冲突期间下载两个额外的大型二进制文件副本,并避免试图将它们塞入合并引擎。

您可以通过打开团队资源管理器配置“不可合并”的文件类型,右键单击您的项目集合并选择团队项目集合设置 > 源代码管理文件类型...确保您正在处理的文件类型在此对话框中被列为“可合并”:

File Types Dialog

关于c# - 如何快速有效地取消搁置我在 VS2010 中的代码?是否可以?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12455985/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com