¿Cómo progtwigr el control de versiones de files con SVN y .NET?

Tenemos un generador de informes. Diariamente, escribe sus datos en un file de Excel.

Por razones de control de versiones y security de los datos de files, necesitamos modificar este file y comprometer los cambios en un repository.

¿Recomiendas alguna API SVN .net que hayas usado?

Debería echar un vistazo a la biblioteca SharpSvn .NET. Probablemente necesites los commands de pago y confirmación:

El logging de salida:

string wcPath = "c:\\my working copy"; using (SvnClient client = new SvnClient()) { client.CheckOut(new Uri("http://server/path/to/repos"), wcPath); } 

Comprometerse

 string wcPath = "c:\\my working copy"; SvnCommitArgs a = new SvnCommitArgs(); a.LogMessage = "My log message"; using (SvnClient client = new SvnClient()) { client.Commit(wcPath, a); } 

Es posible que pueda activar la autoversión para su repository. Como usa WebDAV, puede tratar el repository como una unidad de networking (Carpeta web). Y puede tratar el file como un file normal, simplemente abra, modifique y guarde.

Si fuera yo, crearía un nuevo repository para los files de datos de Excel. No creo que me gustaría que mi código se autoverifique 🙂

Estamos utilizando una herramienta que realmente busca TortoiseSVN instalado en ubicaciones pnetworkingefinidas y lo utiliza api de command-line. Si eso es para Windows y no para la networkingistribución, podría ser más fácil de hacer.

Código útil para cmd:

 @echo off if exist "%ProgramW6432%\TortoiseSVN\bin\TortoiseProc.exe" set patht=%ProgramW6432% if exist "%ProgramFiles%\TortoiseSVN\bin\TortoiseProc.exe" set patht=%ProgramFiles% if exist "%ProgramFiles(x86)%\TortoiseSVN\bin\TortoiseProc.exe" set patht=%ProgramFiles(x86)% echo Placing SVN Commit "%patht%\TortoiseSVN\bin\TortoiseProc.exe" /command:commit /path:"%CD%" /notempfile 

Si aún desea hacer esa tarea desde el código, SharpSVN http://sharpsvn.open.collab.net es mejor elección

Lo más simple sería crear un process y llamar a SVN.exe para confirmar sus cambios.

Aquí hay una pregunta similar que se hizo.

¿Alguien sabe de una buena API de C # para Subversion?

Aquí hay otro recurso

Bibliotecas SVN para .NET?