Come si usa SharpSVN a programmaticamente “aggiungi alla lista ignora” per una cartella

StackOverflow https://stackoverflow.com/questions/2315557

  •  22-09-2019
  •  | 
  •  

Domanda

Come si usa SharpSVN a programatically per aggiungere una cartella alla lista ignora?

EDIT: Tentativo:
Ecco quello che ho provato

svnClient.GetProperty(new SvnUriTarget("svn://svn.foo.com/" + DatabaseName + "/"), SvnPropertyNames.SvnIgnore, out ignores);
ignores += " Artifacts";
var args = new SvnSetPropertyArgs() { BaseRevision = ???, LogMessage = "update ignore list" };
svnClient.SetProperty(new Uri("svn://svn.foo.com/" + DatabaseName + "/"), SvnPropertyNames.SvnIgnore, ignores, args);

Ma io non so come ottenere il BaseRevision (posso farlo manualmente, e che funziona, ma tutte le combinazioni di GetProperty ho provato non sembrano dare a me.)

SOLUZIONE: in base alla risposta di Bert

SvnGetPropertyArgs getArgs = new SvnGetPropertyArgs(){};
string ignores = "Artifacts";
string result;
if(svnClient.GetProperty(new SvnUriTarget("svn://svn.foo.com/" + ProjectName + "/trunk/"), SvnPropertyNames.SvnIgnore,out result))
{
    ignores = result + " Artifacts"; //TODO: check for existing & tidy formatting.
}
svnClient.SetProperty(UncPath.TrimEnd('\\'), SvnPropertyNames.SvnIgnore, ignores);
SvnCommit(svnClient);
È stato utile?

Soluzione

La lista ignora è memorizzato nel 'svn: ignore' immobile nella directory padre che contiene la a essere ignorato file / directory. (Vedere la Subversion libro o svn help propset)

Quindi, per aggiungere un elemento è necessario ottenere il valore della proprietà originale (se ne esiste uno) e quindi aggiungere la voce in più separati da spazi bianchi. Le funzioni di SvnClient per questo sono GetProperty e SetProperty ().

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top