1

svn merge urlToSomeBranch新しく引っ張ったトランクの作業中のサブバージョンコピーから使用しています。上記のコマンドを使用すると、ファイルまたはリビジョンごとに何をマージするかを選択できます。しかし、私が実際にやりたいことは、私が行った変更、または必要に応じて別のチーム メンバーの変更をマージすることだけです。不足しているユーザー名でフィルタリングする方法はありますか? IDE で同様のことを行うことができますが、残念ながら、現在のリリースではマージのバグが原因で、私が使用しているものは妨げられています。前もって感謝します

4

1 に答える 1

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 ベースのシステムで作業している場合は、別のスクリプト言語を使用して同じことを実現できます。

于 2012-06-22T06:34:07.037 に答える