特定の svn サブディレクトリが更新されたかどうかを確認しようとしています。更新されている場合は、作業ディレクトリ全体を更新します。
これが私がすることです:
SvnClient svnClient = new SvnClient();
SvnWorkingCopyClient workingCopyClient = new SvnWorkingCopyClient();
SvnInfoEventArgs svnInfo;
SvnWorkingCopyVersion workingCopyVersion;
Uri svnRepository = new Uri(m_svnAddress + /local/trunk/somefolder");
svnClient.GetInfo(svnRepository, out svnInfo);
workingCopyClient.GetVersion("C:\\Workspace\\somefolder", out workingCopyVersion);
int recentSvnRevision = unchecked((int)svnInfo.Revision);
int currentVersion = unchecked((int)workingCopyVersion.End);
if (recentSvnRevision != currentVersion)
// Do stuff
問題は、ディレクトリrecentSvnRevision
のリビジョンではなく、svn 上のディレクトリ全体の最新のリビジョン番号に設定されていることです/local/trunk/somefolder
。
何か案は?