Domanda

La mia domanda è molto semplice e con la SharpSvn Api, dovrebbe essere facile come bene. Ecco quello che ho fatto:

path = "c:\project";
using (SvnLookClient client = new SvnLookClient())
{
    SvnLookOrigin o = new SvnLookOrigin(path);
    Collection<SvnChangedEventArgs> changeList;
    client.GetChanged(o, out changeList); // <-- Exception
}

e quando chiamo il GetChanged, ottengo un'eccezione:

  

Impossibile aprire il file 'c: \ progetto \ format':. Il sistema non può trovare il file specificato

Quindi, forse c'è qualcosa che mi manca? O forse non è il modo giusto per fare scoprire l'elenco dei file e delle cartelle che sono stati modificati nel repository locale?

Grazie in anticipo.

È stato utile?

Soluzione

La classe SvnLookClient nel SharpSvn è l'equivalente per l'applicazione console 'svnlook'. E 'uno strumento di basso livello che consente ai ganci repository per esaminare le operazioni specifiche di un repository utilizzando accesso diretto ai file.

Probabilmente si desidera utilizzare la classe SvnClient di guardare un WorkingCopy e molto probabilmente il suo status () o in alcuni casi più semplice GetStatus (funzione per vedere cosa è cambiato).

Altri suggerimenti

Il percorso che il costruttore SvnLookOrigin vuole in realtà è:

path = "c:\project\.svn\";

Cioè, vuole che speciale ".svn" directory non solo la radice in cui la sorgente è estratto da.

Anche se che probabilmente non vuole ascoltare Bert e fare qualcosa di simile:

path = "c:\project";
using (SvnLookClient client = new SvnLookClient())
{
    SvnLookOrigin o = new SvnLookOrigin(path);
    Collection<SvnChangedEventArgs> changeList;
    client.GetStatus(o, out changeList); // Should now return the differences between this working copy and the remote status.
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top