Frage

noch ein bisschen eines n00b auf SharpSvn, ich bin auf der Suche etwas einfacher Code zu öffnen, eine SVN-Repository zu bekommen, und liest (zumindest) den vollständigen Pfad aller Dateien in einem bestimmten Ordner.

Lassen Sie uns sagen, dass dieser Ordner \ trunk \ source

Ich bin nicht auf der Suche zur Kasse oder zu begehen, lesen Sie einfach in eine Liste

Ich suche auch alle Dateien zu lesen, nicht nur die geänderten diejenigen.

War es hilfreich?

Lösung

ok es sieht aus wie ich eine Methode gefunden ..

        bool gotList;
        List<string> files = new List<string>();

        using (SvnClient client = new SvnClient())
        {
            Collection<SvnListEventArgs> list;

            gotList = client.GetList(projectPath, out list);

            if (gotList)
            {
                foreach (SvnListEventArgs item in list)
                {
                    files.Add(item.Path);
                }
            }
        }

Andere Tipps

Schrieb dies in Eile im Notizblock; Es tut uns Leid.

SvnClient client = new SvnClient();
client.Authentication.DefaultCredentials = new NetworkCredential("svnuser", "svnpass");
SvnUriTarget folderTarget = new SvnUriTarget("https://mysvnserver.com/mysvnpath");
List<String> filesFound = getFolderFiles(client, folderTarget);

// GetFolderFiles
//   Function that, given a SvnClient and Target to a folder, returns a list of files
private List<String> getFolderFiles(SvnClient client, SvnTarget folderTarget)
{
    List<String> filesFound = new List<String>();
    List<SvnListEventArgs> listResults;

    if (client.GetList(folderTarget, out listResults))
    {
        foreach (SvnListEventArgs item in listResults)
            if (item.Entry.NodeKind == SvnNodeKind.File)
                filesFound.Add(item.Path);

        return filesFound;
    }
    else
       throw new Exception("Failed to retrieve files via SharpSvn");
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top