Come faccio a fare un check-out in esclusiva in SVN?
-
19-09-2019 - |
Domanda
Sto cercando un modo per fare un check-out in esclusiva da SVN.
-
C'è un modo per bloccare automaticamente un file quando è in fase di check-out?
-
Se un utente fa un checkout esclusiva, e poi un altro utente effettua una cassa per lo stesso file, come faccio a generare una sorta di notifica o un messaggio immediato a 2 ° utente che il file è bloccato?
Soluzione
Se ho capito i tuoi messaggi di follow-up, quello che pensi davvero voglio è fare in modo che le persone so sui blocchi. Sto immaginando un caso in cui gli utenti A e B hanno già controllato un jpeg. L'utente A ora lo blocca, e si vuole fare in modo che l'utente B sa, in modo che lui o lei non inizia la modifica del jpeg e sprecare tempo e fatica.
Se questo è corretto, vi consiglio due cose: in primo luogo, di comunicazione (non molto tecnico, ma molto potente se usato in modo coerente); In secondo luogo, si potrebbe dare un'occhiata al gancio repository post-lock
per svn
. È possibile utilizzare che per avere le email inviate quando qualcuno mette un blocco su un file.
Da la subversion
libro :
Il gancio
post-lock
corre dietro uno o più percorsi sono stati bloccati. E 'tipicamente utilizzato per inviare notifiche e-mail della manifestazione di blocco.
Altri suggerimenti
È possibile aggiungere la svn:needs-lock
proprietà o di auto-prop che rende il file di sola lettura e richiede di mettere un blocco sul file di modificarla.
Se si utilizza TortoiseSVN si vedrà un'icona diversa per i file bloccati, questo dovrebbe essere facile per un secondo utente per vedere e sapere di non modificare il file.
È possibile utilizzare svn blocco per impedire ad altri utenti di controllare i cambiamenti nel (nota che è possibile utilizzare --force
per prendere un blocco da un altro utente). Questo genererà messaggi sulla riga di comando a dire alla gente che ha bloccato il file.
E ' non comune per farlo. Le persone lavorano con SVN verificando copie (non in esclusiva) e la scrittura di nuovo le modifiche che vengono fuse con altre variazioni (ciò avviene per i formati unificabili come testo - non si può fare questo per i binari e un check-in sarà respinta se un altro check-in ha verificato nel frattempo).
Non mi aspetto che questo sia usato regolarmente, e io di solito contare su una) di svn capacità di fusione b) la comunicazione con altri membri del team al fine di garantire non sto calpestando i piedi degli altri.