Ich kann nicht begehen Änderungen nach merge in SVN
-
03-07-2019 - |
Frage
Ich hatte ein Problem mit Änderungen kommen nach der Verwendung von TortoiseSVN zwei Zweige meines Projektes verschmelzen.
Hier sind Details:
Ich habe eine merge Zweig Stamm von Projekt , die an dem ich arbeite.
Projekt enthält Haupt-Repository und Bibliotheken Gelenk Hauptrepository als svn externe (Bibliotheken sind verzweigte auch) als Unterverzeichnis von Projekt .
Als ich versuchte Änderungen zu übernehmen TortoiseSVN sagte:
Commit A
re all the targets part of the same working copy?
Unable to lock 'D:\websites\project\lib'
Please execute the "Cleanup" command.
Natürlich Cleanup hat nicht geholfen.
svn:. Externer Stichwort für Projekt Verzeichnis gut definiert wurde, auch lib Ordner noch richtige Version von Bibliotheken (Trunk-Version) enthielt
Sowohl SVN-Server und Client ist in 1.5.x-Version (TortoiseSVN ist 1.5.3.x).
Aus technischer Sicht sowohl Projekt und Bibliotheken sind im selben SVN-Repository.
Jede Idee, was falsch gelaufen ist?
Ich hatte ein wenig für die Lösung wurde googeln, aber nichts nützlich, also versuchte ich meine Änderungen in zwei Schritten zu begehen:
- commit Änderungen von Projektordnern
- commit Änderungen aus Bibliotheken Ordner
Welche ohne Probleme ging.
Aber ich bin immer noch fragen, warum ich nicht alles begehen könnte in einer begehen.
EDITS:
- (nach Ken G Antwort) Feste Version von TortoiseSVN 1.3.x -.> 1.5.3.x
Lösung
svn: external Subversion verschiedene Repository Pfade beim Check-out, aber letztlich diese Wege sind immer noch 'disjunkt' zu kombinieren, wird verursachen, so dass Sie zwei Commits zu tun haben die Änderungen angewendet zu erhalten.
Hier ist das relevante Zitat von Versionskontrolle mit Subversion
Und Subversion noch wirklich funktioniert nur auf nondisjoint Arbeitskopien. So zum Beispiel, wenn Sie wollen, verpflichten Änderungen, die Sie in einem gemacht haben oder mehr dieser externen Arbeitskopien, Sie müssen sich verpflichten, svn ausdrücklich auf diese Arbeitskopien-Begehung auf dem primäre Arbeitskopie nicht Rekursion in irgendwelche externen.
Andere Tipps
1.3 von TortoiseSVN ist sehr alt , die neueste Revision ist 1.5.x. Es hat seit 1.3 zahlreiche Änderungen sowohl in Subversion und TortoiseSVN gewesen, so ein Upgrade Ihres Kunden ist wahrscheinlich die beste Wahl.
Having said that, 1,5 TortoiseSVN wird / Kopien Update Arbeiten auf eine Version 1.5-Format erstellen. Sehr vorsichtig sein, wenn TortoiseSVN (oder ein SVN-Client) gegen eine vorherige Subversion Arbeitskopie verwenden.
Ich glaube, ich erinnere mich, über einen Fehler zu lesen, um diese in TortoiseSVN beziehen, die in der neuesten Version behoben worden sind. Schauen Sie sich die neueste Release Notes .