Sperren eines SubVersion-Zweig in den Tagen vor der Freigabe
In den Tagen vor einer Veröffentlichung möchten wir in der Lage sein, zu verhindern, dass Entwickler von der Begehung Dateien in das SubVersion-Zweig, es sei denn, ein team-leader hat überprüft und genehmigt die änderungen (in dem Fall würden Sie eine vorübergehende änderung dieses zulassen).
Zuvor haben wir verwendet, ClearCase, in denen dies relativ einfach zu tun.
Da die svn:lock-Befehl funktioniert nur auf einer pro-Datei-basis, sind wir unsicher, ob wir ahmen dieses Verhalten in SubVersion.
Was tun Sie?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie einen Blick auf GUI-svn-clients, die haben in der Regel reicher-Schnittstelle/Funktionalität als eine Befehlszeile ein. Zum Beispiel bin ich mit TortoiseSVN die Optionen Get Lock/Release Lock anwendbar für sperren aller Dateien im ausgewählten Ordner rekursiv.
BTW, hat es auch die bequeme Möglichkeit der Herstellung von tag/Verzweigung und schalten Sie es als eine Aktion.
Lateral denken - warum nicht Sie erzeugen einfach einen Zweig an dem Punkt, an dem Sie "Sperre" und nur check-out die revision Nummer in deinem build/release-Prozesses.
Dann können die Entwickler noch den check-in für den Kofferraum (oder was auch immer andere Filiale Sie arbeiten) und wenn ein team-leader billigt änderungen für die release-dann können Sie in den Zweig übertragen.
Zugegeben ist diese nicht eigentlich 'lock', den release-Zweig, aber zumindest können Sie problemlos nachverfolgen/änderungen rückgängig machen, falls notwendig, und es kann nicht verhindern, dass Menschen die arbeiten. Die Entwickler-Quelle wird noch immer deutete auf den ast/Stamm Sie arbeiteten, eher als der neue release-Zweig.
Erstellen Zweige ist sehr Billig und einfach in SVN (glaube ich).
Können Sie ein pre-commit-hook auf dem server, die überprüft, ob der commit-Ziel enthält geschlossene Filialen, und vielleicht ein Stichwort in die log-Meldung zu umgehen, dies zu überprüfen.
Was wir tun ist, bewegen Sie den Zweig über einem tag und nur readonly-Zugriff auf die tag.