Como uso o SharpsVn para “adicionar à lista de ignorar” para uma pasta

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

  •  22-09-2019
  •  | 
  •  

Pergunta

Como uso o SharpsVN para programar para adicionar uma pasta à lista de ignorados?

Editar: Tentativa:
Aqui está o que eu tentei

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);

Mas não sei como obter a BaseVision (posso obtê -lo manualmente, e isso funciona, mas todas as combinações do GetProperty que tentei não parecem me dar.)

Solução: com base na resposta de 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);
Foi útil?

Solução

A lista de ignorar é armazenada na propriedade 'svn: ignora' no diretório pai que contém o arquivo/diretório a ser ignorado. (Veja o Livro de Subversão ou svn help propset)

Portanto, para adicionar um item, você deve obter o valor da propriedade original (se houver um) e adicione o item extra separado ao espaço em branco. As funções no SVNClient para isso são GetProperty e SetProperty ().

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top