Kann ich Subversion + TortoiseSVN groß- / Kleinschreibung für Windows?
Habe ich mit Subversion-code-control mit TortoiseSVN-Schnittstelle mit dem server in den letzten paar Monaten, und im Allgemeinen ist es schon groß! Jedoch, gelegentlich meine FoxPro-IDE wird sich ändern, die bei einem Datei-Erweiterung, ohne Warnung, wo "Programm.prg" wird "Programm.PRG") TortoiseSVN anscheinend braucht das bedeuten, die erste Datei entfernt wurde, werden gekennzeichnet, wie "missing" und der zweite name wird als "nicht versioniert", wütet auf meine Fähigkeit zum verfolgen von änderungen an der Datei. Ich verstehe, dass Subversion hat Ihre Ursprünge in der groß-und Kleinschreibung Welt der *nix-aber, gibt es eine Möglichkeit, um dieses Verhalten zu Steuern, entweder Subversion oder TortoiseSVN, werden Datei-name groß- /Kleinschreibung bei der Verwendung mit Windows?
InformationsquelleAutor Kit Roed | 2008-08-18
Du musst angemeldet sein, um einen Kommentar abzugeben.
Leider Subversion ist case-sensitive. Dies ist aufgrund der Tatsache, dass Dateien, die von Subversion überprüft werden kann auf beiden groß-und Kleinschreibung Dateisysteme (z.B., *nix), und groß-und Kleinschreibung in Datei-Systemen (z.B. Windows, Mac).
Diese pre-commit-hook-Skript kann Ihnen helfen, Probleme zu vermeiden, wenn Sie Dateien Einchecken. Wenn es nicht Ihr problem lösen, mein bester Vorschlag ist, schreiben Sie ein kleines Skript, um sicherzustellen, dass alle Erweiterungen sind Kleinbuchstaben, und führen Sie es jedes mal, bevor Sie check-in/check-out. Es wird ein PITA, aber vielleicht Ihre beste Wette.
Das Skript gab die Datei nicht gefunden, aber die richtige verwiesen wird, die von Autor Stefan hier; stackoverflow.com/questions/5393395/...
InformationsquelleAutor jacobko
Windows unterstützt die groß - /Kleinschreibung, aber Sie müssen senden Sie die richtige POSIX-flags auf CreateFile aus der Windows-API! Ein Registrierungsschlüssel kann geändert brauchen (SFU/Tools für Unix und Ultimate von Windows 7 ist dieser registry-Eintrag bereits gesetzt, so dass windows unterstützt case-sensitive Dateinamen).
Windows soll von Unix, aber Dinge wie Explorer.exe und andere Programme sind so konzipiert, dass die groß-und Kleinschreibung für die rückwärts-Kompatibilität und die Sicherheit (vor allem, wenn der Umgang mit dos ausführen notepad.exe vs. NOTEPAD.EXE, wo all caps ist ein virus-oder malware).
Aber Vista+ hat mit Sicherheit Eigenschaften, die diese obsolet.
TortiousSVN einfach nicht unterstützen die Weitergabe dieses posix-flag während der Herstellung und umbenennen von Dateien.
InformationsquelleAutor TamusJRoyce
Verwende ich TortoiseSVN mit VFP, und es vor allem-nahtlos verarbeitet den Fall kippen. Die einzige Zeit, die es nicht ist, wenn ich die Datei in der IDE geöffnet wird, wenn ich versuche, das zu Begehen: die lock-Datei VFP hält verwirrt. Ist dies, wo ist dein problem kommt, oder gibt es weitere Fragen?
Habe ich eine Präsentation bei FoxForward letzten Jahr über die Verwendung von VFP mit Subversion: die meisten der Präsentation befasste sich mit der Kommandozeile, aber es gibt ein paar Folien am Ende mit links zu tools, die Ihnen helfen, Ihre Arbeit mit Subversion in VFP. http://docs.google.com/Presentation?id=dfxkh6x4_3ghnqc4
VFP = Visual FoxPro
InformationsquelleAutor
Glaube ich, dass die zufällige groß-und Kleinschreibung auf die Erweiterungen ist nicht zufällige überhaupt.
Ich erinnere mich an Tests auf diese. Wenn Sie ändern ein Programm aus dem Projekt-manager.
Durch klicken auf die Schaltfläche "ändern" lassen Sie ' s sagen. Und dann die änderungen speichern, wird die Erweiterung Kleinschreibung. Wenn Sie mit der modify-Befehl aus dem command-Fenster und speichern Sie die änderungen, die die Erweiterung ist groß. Anscheinend sind die Programmierer bei Microsoft nicht sorgen über die Erweiterung Fall der gleiche.
InformationsquelleAutor
Kit, Sie Kommentar oben, dass die VFP die binary-basierten Quell-Dateien sind schwer zu arbeiten mit Subversion. Der link, den ich gab oben erwähnt, ein paar Werkzeuge, um es einfacher zu machen, aber die, die ich arbeiten mit Christof Wollenhaupt ist TwoFox utility -- es wandelt ein VFP-Projekt, um nur-text -. Sie müssen es manuell ausführen, aber ich habe nicht ein problem damit.
http://www.foxpert.com/docs/cvs.en.htm
Sorry, ich habe dies nicht vor-für das Protokoll, ich habe gerade überprüft Christof s Website, und der download ist immer noch gut. Ich vermute, es war nur ein vorübergehendes Problem....
InformationsquelleAutor SarekOfVulcan
Nee man kann sicher nicht. SVN ist case-sensitive, es sei denn, Sie schreiben Sie den code irgendwie ... es ist open-source.
InformationsquelleAutor dewalla
Hatten wir ein ähnliches problem, und ich eine bessere Lösung gefunden als diejenigen, die ausgesetzt hier, also Teile ich es jetzt:
Für begeht getan Händisch, jetzt TortoiseSVN behebt den Fall der Dateinamen automatisch: es benennt die lokalen Dateien entsprechend den Fall der versionierten Dateien (nur durch öffnen der commit-Fenster im Pfad), so sollte es kein problem.
Für automatisierte verpflichtet Sie können nicht verwenden Sie TortoiseSVN, wie es erfordert, dass Sie manuell bestätigen verpflichten (Sie öffnet den übertragen-Fenster mit einer speziellen Nachricht, aber Sie haben noch auf ok zu klicken). Aber wenn man direkt Subversion (svn) verwenden, um eine automatisierte Begehen, dann müssen Sie das case-sensitive Problem auf, dass der commit, die Subversion ist immer noch groß-und Kleinschreibung...
Wie man dieses Problem lösen für die automatisierte verpflichtet? Gut, ich habe versucht, einen kombinierten Ansatz: dem erstellen einer batch-Datei aufgerufen
FixCaseSensitiveFileNames.bat
Sie nennen darf, vorbei an den Pfad, den Sie beheben wollen, bevor die commit-zum Beispiel:call FixCaseSensitiveFileNames.bat C:\MyRepo
. Die batch-Datei öffnet TortoiseSVN für eine manuelle Begehen, und korrigiert automatisch die Dateinamen, aber dann schließt es die commit-Fenster nach einer festgelegten pause, so können Sie sich weiter mit der automatisierten Begehen mit der groß-und Kleinschreibung von Dateinamen bereits behoben. Die pause wird emuliert mit einem lokalen ping, und Sie können die Dauer ändern, durch ändern der-n
argument, das die Anzahl der versuche. Wenn Sie nicht lange genug anhalten, es besteht auch die Gefahr, zu schließen, TortoiseSVN, Fenster, bevor er lässt seine Magie beheben. Hier ist es der code der batch-Datei:Diese völlig gelöst ist das Problem für unsere automatisierten täglichen build-Prozess. Das einzige problem das ich sehe ist ein Fenster öffnen für ein paar Sekunden, das war kein problem für unsere daily-build, aber wenn das ein problem für Sie, es könnte sein, workarounds zu...
InformationsquelleAutor Hugo González Castro