Ciao, io uso la libreria C# e SharpSvn. Vorrei verificare se il file è sotto il controllo del codice sorgente prima di aggiungerlo con SvnClient.Add. Quando lo faccio su file che è già sotto SVN di quanto ottengo errore: "è già sotto controllo di versione".Come verificare se il file si trova sotto il controllo del codice sorgente in SharpSvn?
10
A
risposta
10
Questo dimostra molto bene come farlo usando lo stato
using(SvnClient client = new SvnClient())
{
SvnStatusArgs sa = new SvnStatusArgs();
sa.Depth = SvnDepth.Empty; // Adjust this to check direct files, or (recursive) directories etc
Collection<SvnStatusEventArgs> statuses;
client.GetStatus("c:\\somefile.txt", sa, out statuses);
Assert.That(statuses.Count, Is.EqualTo(1));
Assert.That(SvnStatus.NotVersioned, Is.EqualTo(statuses[0].LocalContentStatus));
}
6
Se desideri solo sapere se il file è sotto il controllo di origine è possibile utilizzare .Info()
/.GetInfo()
. Questo metodo è generalmente più veloce in quanto non deve controllare se il file è cambiato da quando è stato estratto.
+0
'.Status()' eseguirà un confronto di file se il file potrebbe essere stato modificato, quindi nel caso peggiore nel caso in cui solo l'ultimo byte di un file da 2 GB sia stato modificato potrebbe quasi leggere 2 * 2 GB per determinarlo. Con '.Info()' sei sicuro che questo non accada mai. –
Problemi correlati
- 1. Come si ottiene Images.xcassets sotto il controllo del codice sorgente?
- 2. Verificare se il file è già nel controllo sorgente
- 3. Controllare se il file si trova nella (sotto) directory
- 4. Le risorse.Designer.cs dovrebbero essere sotto il controllo del codice sorgente?
- 5. Come si inserisce un grande database esistente (schema) sotto il controllo del codice sorgente?
- 6. Il file .res deve essere nel controllo del codice sorgente?
- 7. ClearCase per il controllo del codice sorgente?
- 8. Come verificare se il cursore si trova su un elemento?
- 9. Esempi di codice sorgente SharpSvn e C#
- 10. Quale parte di HUDSON_HOME dovrei mettere sotto il controllo del codice sorgente?
- 11. Aggiungi il diagramma del database al controllo del codice sorgente?
- 12. Inserire la directory home sotto il controllo del codice sorgente (hg)
- 13. Profiler Golang non trova il codice sorgente
- 14. Trova il percorso del codice sorgente per il file eseguibile correntemente corrotto in gdb
- 15. È il controllo del codice sorgente SQL RedGate per me?
- 16. Come verificare se si utilizza il controllo sporco?
- 17. TFS 2008, rimuovere il file dal controllo del codice sorgente ma lasciarlo nel progetto
- 18. Quando si utilizza il controllo del codice sorgente, quali file devono essere effettivamente impegnati?
- 19. Qual è un modo consigliato per inserire le viste CouchDB sotto il controllo del codice sorgente?
- 20. Come verificare se il file è binario?
- 21. Distribuzione Matlab: aggiungi file al controllo del codice sorgente?
- 22. Esistono strumenti di unione per il controllo del codice sorgente che comprendono il codice?
- 23. Come verificare se il file esiste in Qt in C++
- 24. File di grandi dimensioni nel controllo del codice sorgente (TFS)
- 25. Nuget e file di controllo del codice sorgente da escludere?
- 26. Come posso verificare se il testo sotto il cursore in un div contenteditable è "bold"
- 27. Quali file controllare nel controllo del codice sorgente per il progetto sbt/activator?
- 28. Come verificare se il programma è eseguito sotto controllo Visual Studio?
- 29. Come nascondere stringa di connessione, nome utente, pw quando si utilizza il controllo del codice sorgente?
- 30. Come determinare se il cursore del mouse si trova all'interno di un controllo
Il controllo con .GetInfo() è un po 'più economico (io-saggio) se è necessario sapere solo se il file si trova sotto il controllo del codice sorgente e non se il file viene modificato. –
'.Status()' eseguirà un confronto tra file se il file potrebbe essere stato modificato, quindi, nel caso peggiore nel caso in cui solo l'ultimo byte di un file da 2 GB è stato modificato, potrebbe quasi leggere 2 * 2 GB per determinarlo. Con '.Info()' sei sicuro che questo non accada mai. –