2010-03-09 7 views
4

Je cherche un script C# simple qui exportera un dossier SVN.Code C# pour exporter un dossier SVN

note: J'ai svne tortue installé sur ce serveur Win 2008 r2.

Merci pour votre aide!

exemple:

//SVN: 
string source = c:\project\websiteFiles\ 

//Export to: 
string target = c:\inetpub\hockeyWebsite\ 

ExportSVNfolder(source, target) 
{ 
// export the files 

// wait till export is 100% complete 

// return 
} 

Répondre

8

En utilisant SharpSvn's SvnClient Export Method il est vraiment facile:

SharpSvn.SvnClient svnclient = new SvnClient(); 
svnclient.Export(new SvnUriTarget(source), 
    target, new SvnExportArgs()); 
0

Vous pouvez automatiser toutes les commandes TortoiseSVN via la ligne de commande comme décrit dans le help files. Ou vous pouvez installer et appeler les binaires subversion directement.

Une chose que vous pourriez vouloir considérer est le fait que la commande d'exportation copiera seulement les fichiers versionnés (les fichiers qui sont sous le contrôle de version). Si vous avez d'autres fichiers à copier (par exemple, des fichiers générés en sortie ou générés), je vous recommande d'utiliser une autre approche, par exemple. tels que la solution de ligne de commande (en utilisant xcopy) montré par TheCatcher dans this forum post:

  1. Créez un fichier texte (par exemple c:\ignore.txt) qui répertorie tous les fichiers qui ne doivent pas être exportés/copiés (normalement celui-ci contient une seule ligne: .svn pour exclure les dossiers SVN).
  2. Créer un fichier batch contenant la commande suivante pour faire l'exportation:
  3. XCopy C:\WorkingCopyFolder C:\TargetFolder /EXCLUDE:C:\ignore.txt /E /C /I /F /R /Y
Questions connexes