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

是否可以在同一提交中提交两个工作目录(在同一存储库中)中的更改?

svn
  •  2
  • Blixt  · 技术社区  · 15 年前

    我在一个拥有大量项目的存储库中工作。因此,我只检查开发环境中的单个项目。现在,我已经在其中两个项目中进行了相互关联的更改。因此,很自然,他们应该处于同一个承诺中。如果不签出整个SVN存储库,是否可以这样做?

    存储库结构示例:

    svn.example.com/huge-repository/
        project-1/
        ...
        project-101/
    

    工作开发结构示例:

    ~/src/
        project-5/
        project-42/
    

    我想将更改提交给 project-5 project-42 在一次提交中。

    1 回复  |  直到 15 年前
        1
  •  4
  •   Michael Hackner    15 年前

    您应该创建一个 sparse working copy 只包含相关文件。这将使您能够在不签出整个存储库的情况下进行一次提交。

    例子:

    svn checkout http://svn.example.com/huge-repository --depth empty
    cd huge-repository
    svn update project-5
    svn update project-42
    

    你甚至可以用 --depth empty svn update 选择单个文件或子目录,但默认情况下,它将获取整个文件夹( --depth infinity )