【问题标题】:Is there a way to filter Subversion's command line merge by username有没有办法通过用户名过滤 Subversion 的命令行合并
【发布时间】:2012-06-15 11:42:17
【问题描述】:

我正在使用我的工作颠覆副本中的svn merge urlToSomeBranch 新拉的树干。使用上面的命令,我可以根据文件或修订选择要合并的内容。但我真正想做的只是在需要时合并我所做的更改或其他团队成员的更改。有没有办法按我缺少的用户名过滤?我可以在我的 IDE 中做类似的事情,但可惜的是,我使用的那个在当前版本中受到合并错误的阻碍。 提前致谢

【问题讨论】:

    标签: svn version-control branching-and-merging


    【解决方案1】:

    很遗憾,SVN 不提供这样的功能。

    我最近需要做这样的事情,我最终为此编写了一个脚本。使用 SVN 的 XML 输出和 PowerShell(当然如果你在 Windows 下),它可以非常简单:

    $CmdLine = "svn log <branchURL> --stop-on-copy --xml";
    
    $Logs = [xml](Invoke-Expression $CmdLine);
    
    foreach ($Commit in $Logs.log.entry)
    {
      $Author = $Commit.author;
      if ($Author.CompareTo("YourUsername"))
      {
        $Revision = $Commit.revision;
        $OtherCmdLine = "svn merge -r$Revision <branchURL> <target>";
        $Result = Invoke-Expression $OtherCmdLine;
      }
    }
    

    你显然可以做不同的事情,但这给出了主要思想。

    如果您在基于 Unix 的系统下工作,则可以使用另一种脚本语言实现相同的目的。

    【讨论】:

      猜你喜欢
      • 2021-08-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-16
      相关资源
      最近更新 更多