代码之家  ›  专栏  ›  技术社区  ›  Anemoia

Visual SourceSafe,共享:提交到错误的位置

  •  1
  • Anemoia  · 技术社区  · 15 年前

    我管理着一个项目。

    其结构如下:

    美元/代码/主要解决方案 美元/代码/分行

    我想将主解决方案分支到$/code/分支中

    所以我做了,(它工作得很好),我为那个项目设置了一个工作文件夹,并做了一个“获取最新信息”。

    但是,当我在Visual Studio 2005中打开该解决方案时,它会将每个文件标识为新文件(在文件前面签名),当我提交时,它会转到

    美元/数据/牧场名称

    为什么会这样?为什么不遵守我的规则?

    2 回复  |  直到 15 年前
        1
  •  1
  •   Mark Tolonen    15 年前
    1. 转到文件、源代码管理、更改 源代码管理(至少在VS2008上)。

    2. 查看服务器绑定列。 通常您希望绑定到 指向解决方案的根项目 解决方案的vss目录 所有的项目。如果没有,那么:

    3. 解除束缚 全部的 项目和 解决方案。

    4. SHIFT选择整个列表。

    5. 将所有内容绑定到解决方案根目录。

    如果在分支和固定项目之前执行此操作,则更容易。之后,您必须对.sln文件进行分支,可能还要对.vcproj和.vspsc进行分支,以便正确保存修改。

    Here's 对文件vss和Visual Studio Manage有很好的参考。这些文件很容易就乱成一团。

    我管理一个VSS数据库已经很多年了,最近转向了Mercurial,并且没有回头看。在VSS中进行分支和合并是可怕的。

        2
  •  2
  •   MK.    15 年前

    我通常使解决方案下的所有VCproj文件都具有以下内容:

    SccProjectName = "SAK"
    SccLocalPath = "SAK"
    SccAuxPath = "SAK"
    SccProvider = "SAK"
    

    这将使它从解决方案文件中获取SourceSafe信息。确保解决方案文件已分支,而不是在2个分支中共享。打开分支解决方案,然后转到“更改源代码管理”,并将解决方案绑定到SourceSafe中的正确位置。
    这一切都相当脆弱(或者我可能不完全理解),但我通常只是戳它直到它工作。 和往常一样:如果可能的话,迁移到另一个源代码控制系统。表演,颠覆,反复无常…