Hinweis: Dies ist wahrscheinlich ein Kinderspiel für erfahrene SVN-Benutzer, aber es hat mich eine ganze Weile überrascht ... also hoffen wir, dass dies jemandem wie mir hilft!
Nachdem svn log
ich über die Befehlszeile ausgegeben hatte, bemerkte ich, dass mehrere kürzlich festgeschriebene Nachrichten fehlten. Ich wusste, dass diese Nachrichten korrekt in meinem Repository gespeichert wurden, da sie in meinem SVN-Client (RapidSVN) angezeigt wurden. Ich konnte einfach nicht herausfinden, warum sie mit der Befehlszeilenversion von svn nicht sichtbar waren.
Antwort unten ...
svn commit
laufensvn update
?show log
Zeigt nur die Revisionen des Zweigs an, auf denen Ihre Arbeitskopie basiert, nicht jedoch die Revisionen des Trunks und der verbleibenden Zweige. Ich kann dafür auf TortoiseSVN Client bürgen :)svn log
mein Passwort erforderlich ist. Also nahm ich an, dass es den Server treffen muss, um das neueste Protokoll zu erhalten. Wenn ich nicht nach meinem Passwort gefragt würde, würde ich eher annehmen, dass es das Protokoll meiner Arbeitskopie verwendet.Wenn Sie das vollständige Protokoll ohne Aktualisierung anzeigen möchten (wie ich es manchmal bei der Arbeit an einer alten Revision tue), können Sie Folgendes ausführen:
Oder zur einfacheren Anzeige:
quelle
Ich bin heute auf dasselbe Problem gestoßen und war entsetzt, als ich dachte, ich hätte meine Änderungen verloren.
Es passiert nur wegen der Verrücktheit der Subversion. Es gibt ein Konzept der Arbeitskopie, das auf die ursprünglich ausgecheckte Revision eingestellt ist. Die Überarbeitung der Arbeitskopie wird durch neue Commits nicht geändert.
svn update
ist erforderlich, um die Revision der Arbeitskopie mit dem Repository zu aktualisieren / zu synchronisieren. Ich bin mir nicht sicher, ob ich das in jedem Szenario tun möchte.PS:
git
ist so viel besser.quelle
Sie können svn log auch explizit anweisen, zum Server zu wechseln, indem Sie die URL des Repositorys angeben.
z.B
Oder allgemeiner und prägnanter:
quelle