2012-01-05 5 views
0

SharpSVNで何かをコミットしようとするときにローカルパスを使用しますか?私はこのライブラリがオンラインのSubversionリポジトリとどのように連携しているか理解していません。非常に混乱。どんな助けも素晴らしいだろう。聞くには、あなたがリポジトリにローカルの作業コピーから変更をコミット...私がコミットしようとするとどのようにSubversionではSharpSVNのローカルディレクトリパラメータコミット

using (SvnClient client = new SvnClient()) 
     { 
      SvnCommitArgs args = new SvnCommitArgs(); 

      args.LogMessage = message; 
      args.ThrowOnError = true; 
      args.ThrowOnCancel = true; 

      try 
      { 
       return client.Commit(path, args); 
      } 
      catch (Exception e) 
      { 
       if (e.InnerException != null) 
       { 
        throw new Exception(e.InnerException.Message, e); 
       } 

       throw e; 
      } 
     } 

答えて

1

です。

まず、作業コピー(たとえば、SvnClient.CheckOut)をチェックアウトしてから、いくつかの変更を行います。

変更の実行が完了したら、リポジトリに対するすべての変更をコミットします。 Subversionの基本的な情報については、http://svnbook.red-bean.com/を参照してください。

ThrowOnErrorはデフォルトでtrueに設定されているため、設定する必要はありません。キャンセルを許可するには、いくつかのコールバックを設定する必要があるため、通常はそのケースを無視することができます。

コミットエラーの場合Subversionは通常、一度にいくつかのエラーを返すので、内部の例外の外側または1つを調べるだけでなく、エラーチェーン全体を調べるだけです。

関連する問題