0

SVN リポジトリを使用して、指定された日付 (リビジョン、タグ) の後に指定されたユーザーによってコミットされたすべての変更からパッチを作成する方法。私のアイデアは Eclipse と Intellij Idea ですが、亀にもアクセスできます。

4

2 に答える 2

0

ユーザー名が「test」で、指定された日付の間に変更されたすべてのファイルを特定したいとします。

svn log <url> --username test -qv -r {2010-11-01}:{2011-05-04} > log.txt
于 2012-07-03T10:28:54.967 に答える
0

PowerShell が受け入れられるオプションである場合、ジョブを実行するスクリプトは次のとおりです。

$RepoAddr = "https://url/to/your/repo";
$FromRev = "140";
$ToRev = "HEAD";
$WantedAuthor = "yannick";
$PatchFile = "$($WantedAuthor).patch";

$CmdLine = "svn log -r$($FromRev):$($ToRev) $RepoAddr --xml";
$Logs = ([xml](Invoke-Expression $CmdLine));

foreach ($Commit in $Logs.log.logentry)
{
    [string]$TmpAuth = $Commit.author;
    if ($TmpAuth.CompareTo($WantedAuthor) -eq 0)
    {
        [int] $TmpRev = $Commit.revision;
        $PatchCmdLine = "svn diff -r$($TmpRev-1):$TmpRev $RepoAddr";
        Write-Host $PatchCmdLine;
        Invoke-Expression $PatchCmdLine | Out-File $PatchFile -append;
    }
}

お役に立てれば!!

于 2012-07-03T11:02:11.253 に答える