我使用 Enterprise Architect,它用于svn lock
将模型文件锁定在 subversion 存储库中。例如:
>svn status
K Documents\UML\eaB\B2ACB6CFF398.xml
K Documents\UML\eaB\BE1936A1AE75.xml
K Documents\UML\eaC\C3B74A5737E1.xml
我了解到,svn commit
除非您使用该--keep-locks
选项,否则您会松开锁。从 Subversion 1.8 开始,我注意到svn update
现在也解锁了:
>svn update
Aktualisiere ».«:
UB Documents\UML\eaB\BE1936A1AE75.xml
UB Documents\UML\eaB\B2ACB6CFF398.xml
UB Documents\UML\eaC\C3B74A5737E1.xml
Hole externen Verweis nach »Homeserver\Library\src\test\resources\config-current«:
Externer Verweis aktualisiert zu Revision 22020.
Revision 22020.
>svn status
请注意, 之后没有任何内容svn status
。锁没了!但是svn update
没有--keep-locks
状态B:
>svn help update
update (up): Aktualisiert die Arbeitskopie mit Änderungen aus dem Projektarchiv.
Aufruf: update [PFAD...]
…
A Added - Hinzugefügt
D Deleted - Gelöscht
U Updated - Aktualisiert
C Conflict - Konflikt
G Merged - Zusammengeführt
E Existed - Existierend
R Replaced - Ersetzt
好吧,是德语。但是您不需要说德语就可以看到该列表中没有B。
如果我现在尝试重新锁定,我被告知文件已被锁定:
>svn lock Documents\UML\eaB\BE1936A1AE75.xml Documents\UML\eaB\B2ACB6CFF398.xml Documents\UML\eaC\C3B74A5737E1.xml
svn: Warnung: W160035: Path '/AndroidApp/trunk/Documents/UML/eaB/BE1936A1AE75.xml' is already locked by user 'martin.krischik' in filesystem '/srv/svn/…/db'
svn: Warnung: W160035: Path '/AndroidApp/trunk/Documents/UML/eaC/C3B74A5737E1.xml' is already locked by user 'martin.krischik' in filesystem '/srv/svn/…/db'
svn: Warnung: W160035: Path '/AndroidApp/trunk/Documents/UML/eaB/B2ACB6CFF398.xml' is already locked by user 'martin.krischik' in filesystem '/srv/svn/…/db'
这是一个错误还是这种奇怪行为的原因。
更新:
感谢@user655063,我现在知道B代表破锁。这导致了以下问题:“为什么锁总是坏掉”。
不仅仅是在被 Enterprise Architect 锁定时。如果我在命令行上重新锁定文件,下一个锁定也将被视为已损坏和未锁定svn update
。