AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Werkzeuge SVN: Revisionsdatei auf dem Server löschen?
Thema durchsuchen
Ansicht
Themen-Optionen

SVN: Revisionsdatei auf dem Server löschen?

Ein Thema von hoika · begonnen am 9. Nov 2016 · letzter Beitrag vom 9. Nov 2016
Antwort Antwort
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#1

SVN: Revisionsdatei auf dem Server löschen?

  Alt 9. Nov 2016, 09:33
Hallo,
ich habe hier ein Repository.
Eine Revision ist eine Binärdatei, die ich aus Versehen committed habe.
Die will ich wieder raushaben.

Wenn ich die per SVN löschen, bleibt sie ja (gelöscht) auf dem Server.

Kann ich die gefahrlos direkt auf dem Server löschen (db/revs)
oder mache da was kaputt?

PS:
Das ist noch ein altes Repository (SVN 1.6), wo die Revisions in Dateien ablegt sind.

Da fällt mir noch ein: Wie mache ich das eigentlich mit sqlite als SVN-DB???
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.152 Beiträge
 
Delphi 12 Athens
 
#2

AW: SVN: Revisionsdatei auf dem Server löschen?

  Alt 9. Nov 2016, 09:39
Also, das geht nicht ... Revisionen sind unveränderbar, sonst wäre es ja nicht mehr nachverfolgbar und gerade dafür ist SVN ja da.

Offiziell kann man Dateien nur im SVN löschen, bzw. kann die Revision "rückgängig" machen (und diese Änderungen einchecken), aber alles bleibt im Repo drin.



Wenn es um die letzte Revision geht (die macht am wenigsten Probleme, weil man auch alle nachfolgenden Revisionen anpassen müsste), dann kann man aber ein Backup des SVN machen, bearbeitet die Backupdateien und spielt dann das Backup wieder ein.

OK, man könnte auch direkt im Serververzeichnis rumpfuschen, aber so leicht ist das auch nicht.
Bei VisualSVN sind das ja alles nur Textdateien, wo die Revisionsinfos drin stehen, und je Revision eine Datei mit den Änderungen. (Server stoppen, drin rumpfuschen und wieder starten)



Und nee, einfach was löschen/ändern, ohne z.B. die Hashs in der RevInfo anzupassen wird hoffentlich knallen, beim nächsten Serverstart, denn ich hoffe mal der hat einen Integritätstest drin.
Bei mir damals konnte ich nichts mehr einchecken, bis ich alle "Fehler" behoben hatte.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu ( 9. Nov 2016 um 09:45 Uhr)
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: SVN: Revisionsdatei auf dem Server löschen?

  Alt 9. Nov 2016, 10:24
Hallo,

OK, man könnte auch direkt im Serververzeichnis rumpfuschen, aber so leicht ist das auch nicht.
Bei VisualSVN sind das ja alles nur Textdateien, wo die Revisionsinfos drin stehen, und je Revision eine Datei mit den Änderungen. (Server stoppen, drin rumpfuschen und wieder starten)


Genau das will ich machen.


Ich habe mal testweise ein Repository erzeugt, dort 3 Revs eingecheckt und dann auf dem Server Rev2 gelöscht.
Auf den Clients war Rev2 dann halt nicht mehr da.
Sämtliche Methoden funktionieren weiterhin (Update, Commit, Diff).

Deshalb ja meine Frage.
Heiko

Geändert von hoika ( 9. Nov 2016 um 10:44 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.608 Beiträge
 
#4

AW: SVN: Revisionsdatei auf dem Server löschen?

  Alt 9. Nov 2016, 11:06
Das geht schon. Da gibt es z.B. die Tools adminsvndump und adminsvnload, und Du kannst mit adminsvnfilter die revisionen beim restore rauslassen, die Du nicht mehr in der Historie haben magst.

Die Offizielle Doku gibt da nähere Infos: http://subversion.apache.org/faq.html#removal

Aber: Das würde ich nur mit sehr, sehr, sehr großer Vorsicht machen, denn Du kannst Dein Repo damit ziemlich zuverlässig komplett zerstören.
Also: Vorher den Prozess mehrfach auf einer 1:1 Kopie des Repos testen, und dann am besten ein Batch- oder Shellscript erstellen dass a) ein Backup macht, und dann zum gewünschten Zustand führt, und nie manuell mit ungetesteten Commands am Repo rumpfuschen.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: SVN: Revisionsdatei auf dem Server löschen?

  Alt 9. Nov 2016, 15:28
Hallo,
der Link hilft mir weiter.
Also werde ich die Revisions-Datei nicht einfach so löschen

Danke
Heiko
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:34 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz