fragen stichworte

Einrichten von Subversion Lock-Modify-Unlock auf Windows Server

Ich habe einen Visual SVN-Server, der auf einem Windows-Computer ausgeführt wird. Ich verwende den VisualSVN-Client, der in Visual Studio integriert ist. Zuvor haben wir Visual SourceSafe verwendet, das das Versionierungsmodell Lock-Modify-Unlock hatte. Trotz der Nachteile dieses Modells ist es das, woran wir gewöhnt sind, und wir wollen ein identisches Verhalten von Subversion. Kurz gesagt, wir trauen dem Zusammenführen nicht.

Ich habe Folgendes getan ...

  • Aktivierte Auto-Requisiten im Abschnitt [Verschiedenes] von config: enable-auto-props = yes
  • Eintrag zu [Auto-Props] hinzugefügt, um die Sperrung aller Dateien zu erzwingen: * = svn:needs-lock=*
  • Deaktivieren Sie no-unlock, um die Datei beim Commit automatisch zu entsperren: no-unlock = false
  • TortoiseSVN-Einstellungen geändert, um das Sperrdialogfeld beim Sperren von Dateien nicht anzuzeigen
  • TortoiseSVN wurde so geändert, dass Dialogfelder automatisch geschlossen werden, wenn keine Fehler auftreten.

Und ich habe folgende Probleme ...

  • Wenn ich meine Änderungen rückgängig mache, wird die Sperre nicht aufgehoben. Es sollte sein. Gibt es eine Möglichkeit, die Freigabe beim Umschalten zu erzwingen?
  • Bearbeiten: Festgelegt! Jedes Mal, wenn ich eine Änderung vornehme, wird automatisch eine Sperre angezeigt, aber es wird ein Dialogfeld angezeigt, in dem "Lock Finished!" Dieser Dialog steht nur im Weg. Es wäre schön, davon ausgehen zu können, dass die Sperre erfolgreich abgeschlossen wurde. Gibt es eine Möglichkeit, dieses Dialogfeld auszublenden und nur dann anzuzeigen, wenn ein Fehler auftritt.

Wie kann ich diese Probleme lösen? Ich möchte wirklich keine Verkaufsargumente darüber hören, warum wir copy-modify-merge verwenden sollten. Bitte helfen Sie mir, die Probleme zu lösen.

antworten

Ich denke, Ihre Probleme sind mit VisualSVN verbunden. Sie müssen sich an sie wenden, um das Produkt so zu konfigurieren, dass das Dialogfeld nicht angezeigt wird und es beim Rücksetzen automatisch entsperrt wird. Stefan ist ziemlich gut darin, Korrekturen vorzunehmen, und es klingt so, als sollte das Konfigurationselement no-unlock auch für das Zurücksetzen sowie das Festschreiben gelten. Beachten Sie, dass die Revert-Funktion den Server nicht kontaktiert. Daher könnte er eine unerwünschte Änderung in Betracht ziehen.

In den meisten Fällen handelt es sich bei der Sperre um eine manuelle Angelegenheit, die Sie explizit sperren und entsperren müssen, sodass die meisten Benutzer, die sie verwenden, möchten, dass sie entsperrt werden.

Wenn es sich bei dem "Sperrdialog" um eine Tortoise-Sache handelt, können Sie die Dialogfelder so konfigurieren, dass sie automatisch geschlossen werden, wenn keine Fehler auftreten. Senden Sie erneut eine Nachricht an die Mailingliste, um zu sehen, ob alle anderen diese Änderung wünschen.

PS. Als ich von VSS zu SVN konvertierte, entschied ich mich für den Copy-Merge-Modify-Ansatz und klappte dann alles auf, wenn es nicht gut funktionierte. Niemand hat sich beschwert, und alle mögen das System (nachdem ich einmal gesagt hatte, dass sie nicht versuchen sollten, Konflikte mit Binärdateien zu lösen)