2011-01-07 16 views
1

Ich habe diesen Code, der eine uri Inhalt in eine MemorySream bekommt:SharpSvn - wie sich Änderungen von Memorystream zu speichern, ohne Kopie zu arbeiten

MemoryStream ms = new MemoryStream(); 
SvnTarget target = new SvnUriTarget(new Uri(webConfigUri)); 
client.Write(target, ms); 
string webConfigText = Encoding.ASCII.GetString(bms.ToArray()); 
webConfigText = webConfigText.Replace(oldLine, newLine); 

Dies funktioniert.

Frage: Wie speichere ich jetzt die Änderungen (in webConfigText), die ich gemacht habe?

Danke, ich reiße mir gerade die Haare aus. D

+0

Auf Platte speichern? Oder commit zu SVN? –

Antwort

1

Noch einmal diese Frage gelesen, es scheint, als ob Sie die Änderungen zurück in das Repository übertragen möchten. Dies ist ohne eine Arbeitskopie nicht möglich. Wenn Sie das wirklich nur tun möchten, erstellen Sie eine Arbeitskopie in dem Temp-Verzeichnis und löschen Sie es anschließend.

var client = new SvnClient(); 
string workingCopy = Path.Combine(Path.GetTempDir(), "workingcopy"; 
client.CheckOut(new Uri(reposUri), workingCopy); 

// modify the file(s) 
client.Commit(workingCopy, new SvnCommitArgs { LogMessage = "Automatic commit" });