AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Wie vergleicht Subversion die Dateien??

Wie vergleicht Subversion die Dateien??

Ein Thema von phlux · begonnen am 7. Jun 2005 · letzter Beitrag vom 8. Jun 2005
Antwort Antwort
Seite 1 von 2  1 2   
Benutzerbild von phlux
phlux

Registriert seit: 4. Nov 2002
Ort: Witten
1.335 Beiträge
 
Delphi 6 Personal
 
#1

Wie vergleicht Subversion die Dateien??

  Alt 7. Jun 2005, 12:10
Hi!

Gibt es hier ein paar Leute die sich mit Subversion auskennen?? Es geht darum, dass ich nicht weiß, wie SVN feststellt ob eine Datei geändert wurde. Vergleicht SVN die bearbeitete Datei mit der Arbeitskopie Byteweise oder nur anhand des Zeitstempels?

mfg, phlux
Christian "phlux" Arndt
  Mit Zitat antworten Zitat
Benutzerbild von RavenIV
RavenIV

Registriert seit: 12. Jan 2005
Ort: Waldshut-Tiengen
2.875 Beiträge
 
Delphi 2007 Enterprise
 
#2

Re: Wie vergleicht Subversion die Dateien??

  Alt 7. Jun 2005, 13:40
aus der beschreibung zu Tortoise (tortoisesvn.tigris.org):
Zitat:
2.3.3. Wie Arbeitskopien das Projektarchiv verfolgen
Für jede Datei in einer Arbeitskopie zeichnet Subversion zwei wesentliche Informationen im .svn
Administrationsordner auf:
• Auf welcher Revision die Datei basiert (dies wird auch Arbeitsrevision genannt)
• Der Zeitpunkt, an dem die Datei zum letzten Mal mit dem Projektarchiv aktualisiert wurde.
Mittels dieser Informationen ist Subversion in der Lage, durch Anfragen an das Projektarchiv herauszufinden,
in welchem der folgenden vier Zustände eine Datei ist:
Unverändert und aktuell
Die Datei wurde weder lokal noch im Projektarchiv verändert. Eine Übertragung und auch
eine Aktualisierungdieser Datei bewirkt nichts.
Lokal verändert und aktuell
Die Datei wurde lokal verändert, aber nicht im Projektarchiv. Eine Übertragung bewirkt ein
Speichern dieser Änderungen im Projektarchiv. Eine Aktualisierung hingegen bewirkt nichts.
Unverändert, aber nicht aktuell
Die Datei wurde lokal nicht verändert, jedoch gibt es Änderungen an der Datei im Projektarchiv.
Eine Übertragung bewirkt nichts, jedoch wird ein Aktualisieren die Änderungen aus
dem Projektarchiv in die lokale Kopie der Datei einfügen.
Lokal verändert und nicht aktuell
Die Datei wurde lokal und im Projektarchiv verändert. Ein Übertragen wird mit einer Fehlermeldung
fehlschlagen. Die Datei muss zuerst Aktualisiert werden, um die Änderungen aus
dem Projektarchiv in die lokale Kopie einzufügen. Falls Subversion nicht in der Lage sein sollte, diese Änderungen selbst zusammenzuführen, muss der Benutzer den Konflikt manuell lösen.
ist damit deine frage geklärt?
ansonsten kann ich dir das SVNbook empfehlen. Zum download bei subversion.tigris.org.

gruessle
Klaus E.
Linux - das längste Text-Adventure aller Zeiten...
Wer nie Linux mit dem vi konfiguriert hat, der hat am Leben vorbei geklickt.
  Mit Zitat antworten Zitat
Benutzerbild von nailor
nailor

Registriert seit: 12. Dez 2002
Ort: Karlsruhe
1.989 Beiträge
 
#3

Re: Wie vergleicht Subversion die Dateien??

  Alt 7. Jun 2005, 15:10
ich glaube er will wissen, woher svn weiss, ob eine datei "lokal verändert" wurde.
Michael N.
http://nailor.devzero.de/code/sharpmath/testing/ --- Tests, Feedback, Anregungen, ... aller Art sehr willkommen!
::: don't try so hard - it'll happen for a reason :::
  Mit Zitat antworten Zitat
Benutzerbild von RavenIV
RavenIV

Registriert seit: 12. Jan 2005
Ort: Waldshut-Tiengen
2.875 Beiträge
 
Delphi 2007 Enterprise
 
#4

Re: Wie vergleicht Subversion die Dateien??

  Alt 7. Jun 2005, 15:15
Zitat von nailor:
ich glaube er will wissen, woher svn weiss, ob eine datei "lokal verändert" wurde.
steht doch auch da:
Zitat:
• Der Zeitpunkt, an dem die Datei zum letzten Mal mit dem Projektarchiv aktualisiert wurde.
Klaus E.
Linux - das längste Text-Adventure aller Zeiten...
Wer nie Linux mit dem vi konfiguriert hat, der hat am Leben vorbei geklickt.
  Mit Zitat antworten Zitat
Benutzerbild von nailor
nailor

Registriert seit: 12. Dez 2002
Ort: Karlsruhe
1.989 Beiträge
 
#5

Re: Wie vergleicht Subversion die Dateien??

  Alt 7. Jun 2005, 15:17
dann wäre jede datei ab der milisekunde nach dem aktualisieren (checkout) nicht mehr aktuell sondern "verändert"
Michael N.
http://nailor.devzero.de/code/sharpmath/testing/ --- Tests, Feedback, Anregungen, ... aller Art sehr willkommen!
::: don't try so hard - it'll happen for a reason :::
  Mit Zitat antworten Zitat
Benutzerbild von RavenIV
RavenIV

Registriert seit: 12. Jan 2005
Ort: Waldshut-Tiengen
2.875 Beiträge
 
Delphi 2007 Enterprise
 
#6

Re: Wie vergleicht Subversion die Dateien??

  Alt 7. Jun 2005, 15:29
Zitat von nailor:
dann wäre jede datei ab der milisekunde nach dem aktualisieren (checkout) nicht mehr aktuell sondern "verändert"
dan beachte noch den ersten punkt:
Zitat:
• Auf welcher Revision die Datei basiert (dies wird auch Arbeitsrevision genannt)
Klaus E.
Linux - das längste Text-Adventure aller Zeiten...
Wer nie Linux mit dem vi konfiguriert hat, der hat am Leben vorbei geklickt.
  Mit Zitat antworten Zitat
Benutzerbild von nailor
nailor

Registriert seit: 12. Dez 2002
Ort: Karlsruhe
1.989 Beiträge
 
#7

Re: Wie vergleicht Subversion die Dateien??

  Alt 7. Jun 2005, 15:38
nochmal:

legende :
"was mach ich" ("ergebnis")

runterladen (aktuell)
warten (aktuell)
öffnen ändern speichern (geändert)
öffnen ändern speichern timestamp zurücksetzen (???)
timestamp ändern (???)
neue datei drüberkopieren (geändert)
gleiche datei drüberkopieren (geändert)
anderes betriebssystem booten datei ändern [mit ohne timestamp ändern] (???)
...
Michael N.
http://nailor.devzero.de/code/sharpmath/testing/ --- Tests, Feedback, Anregungen, ... aller Art sehr willkommen!
::: don't try so hard - it'll happen for a reason :::
  Mit Zitat antworten Zitat
Basilikum

Registriert seit: 9. Aug 2003
389 Beiträge
 
Delphi 7 Professional
 
#8

Re: Wie vergleicht Subversion die Dateien??

  Alt 7. Jun 2005, 16:28
Zitat von nailor:
runterladen (aktuell)
warten (aktuell)
öffnen ändern speichern (geändert)
öffnen ändern speichern timestamp zurücksetzen (geändert)
timestamp ändern (aktuell)
neue datei drüberkopieren (geändert)
gleiche datei drüberkopieren (geändert)
anderes betriebssystem booten datei ändern [mit ohne timestamp ändern] (geändert)
...
Subversion untersucht den tatsächlichen Fileinhalt...

mittels TortoiseSVN kannst Du Dir sogar zeigen lassen, welche Zeilen geändert wurden (Diff)

bei gleichzeitigen Änderungen verschiedener Nutzer kann SVN diese mergen, sofern sie nicht im Konflikt stehen...
  Mit Zitat antworten Zitat
Benutzerbild von nailor
nailor

Registriert seit: 12. Dez 2002
Ort: Karlsruhe
1.989 Beiträge
 
#9

Re: Wie vergleicht Subversion die Dateien??

  Alt 8. Jun 2005, 11:00
ws ist imho unmöglich, dass der komplette fileinhalt bei jedem checkout/checkin geprüft wird. da kann höchstens sowas wie der timestamp oder ein hash übertragen werden (oder die dateizugriffe werden auf betriebssystem-ebene mitgeloggt). und nur wenn dabei ein verdacht entsteht, wird genau nachgeschaut.
Michael N.
http://nailor.devzero.de/code/sharpmath/testing/ --- Tests, Feedback, Anregungen, ... aller Art sehr willkommen!
::: don't try so hard - it'll happen for a reason :::
  Mit Zitat antworten Zitat
Basilikum

Registriert seit: 9. Aug 2003
389 Beiträge
 
Delphi 7 Professional
 
#10

Re: Wie vergleicht Subversion die Dateien??

  Alt 8. Jun 2005, 11:44
Zitat von nailor:
ws ist imho unmöglich, dass der komplette fileinhalt bei jedem checkout/checkin geprüft wird.
den Fileinhalt kann man auch durch reinen Hash-Vergleich mit grosser Sicherheit auf Gleichheit überprüfen... TortoiseSVN (vermutlich SVN-Clients allgemein) hält einen 128bit-Hash (MD5) der "Working Base"-Datei bereit (in der Datei .svn\entries)... und da Quell-Code-Files meist eh nicht riesig sind, kann so relativ rasch auf Gleichheit geprüft werden...
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 10:33 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