【问题标题】:TFS2008 & VS2008 : File deleted from Solution Explorer still appears in Source Control ExplorerTFS2008 & VS2008:从解决方案资源管理器中删除的文件仍然出现在源代码管理资源管理器中
【发布时间】:2016-12-30 04:16:15
【问题描述】:

我发现 VS2008 与 TFS 2008 集成时出现了一些奇怪的行为。当我从解决方案资源管理器中从解决方案中删除文件并将其签入时,该文件仍会出现在源代码管理资源管理器中。

在源代码管理资源管理器中,文件显示在 Pending Change 列下具有值“delete”。它也以相同的状态出现在 Pending Changes 窗口中,我不得不从那里签入。

知道这是否“正常”,如果是,其背后的基本原理是什么?如何避免两次签入文件删除?

【问题讨论】:

    标签: visual-studio visual-studio-2008 tfs


    【解决方案1】:

    您是如何办理登机手续的?我猜你是从解决方案资源管理器上下文菜单中完成的。当 Checkin 模式对话框弹出时,即使它显示了待处理更改的整个列表,默认情况下只会检查当前在解决方案中的项目。

    这是I don't recommend 从解决方案资源管理器调用重要操作的另一个原因。为您自动挂起更改很方便,但修改状态的操作(例如 Get、Checkin、Shelve)更值得关注。

    【讨论】:

      【解决方案2】:

      编辑:反映评论。

      这很奇怪,我没有这种行为,我们网站上的任何人也没有。如果我们在解决方案资源管理器中删除一个文件(选择文件并点击删除),它将成为待处理的更改。然后我可以检查更改。我必须确保在签入/待更改窗口中选择删除。然后它不再显示为源资源管理器中的待定更改。事实上,我可以在任何一个窗口中签入和签出,并且更改会立即反映在另一个窗口中。

      ====

      已删除的文件仍保留在 TFS 中。要完全删除文件,您必须“销毁”它而不是删除它。这实际上是源代码控制。如果您不想看到该文件,那么 Visual Studio 中有一个设置可以隐藏它们。我个人更喜欢它们,因为你可以看到历史并且它们是视觉提醒。

      删除文件后,您需要提交删除 - 这实质上是签入删除。在此之后,该文件将保留在源资源管理器中,但显示为灰色。然后你就可以做我上面提到的事情了。

      【讨论】:

      • 发送答案。我不是在谈论已删除、签出并且现在显示为灰色的文件(如果“显示已删除项目...”选项已打开)。我的问题在此之前 - 我从解决方案资源管理器中删除和签入的文件,我稍后还必须从源代码管理资源管理器中签入。为什么是双重动作?
      • 回复:编辑以反映评论:)。请注意,我抱怨的是从解决方案资源管理器签入是不够的。只有从源代码管理资源管理器签入才能真正从源代码管理存储库中删除文件。
      【解决方案3】:

      工具的设置是什么|选项 |源代码管理 | Visual Studio 团队... |在源代码管理资源管理器中显示已删除的文件?

      默认为未设置,但如果已设置,则会出现已删除的文件。

      【讨论】:

      • 我认为这个设置无关紧要。它是指显示已从 TFS 中完全删除的文件。我所指的情况是某种“部分删除” - 该文件仅在源代码管理资源管理器中标记为“待删除”。只有在我在 S.C.E. 中检查之后。上述选项是否确定它是否可见。
      【解决方案4】:

      嗯,

      这种行为是完全正常的 - 如果有点令人困惑 - 当您从解决方案中删除一个文件时,该文件在源代码管理中被标记为待删除,但是当您通过解决方案资源管理器签入时,在签入点 -在该文件中不再属于解决方案的范围。

      如果您在任何时候从解决方案中删除文件,请记住从源代码管理资源管理器中签入。

      安东尼

      【讨论】:

        猜你喜欢
        • 2018-06-07
        • 1970-01-01
        • 2016-12-11
        • 2019-03-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多