2015-01-17 11 views
6

Il risultato di molte ricerche su rete è che il collegamento pre-checkout non è ancora stato implementato. Il motivo può essere:Come ottenere l'hook di "pre-checkout" in Git/bitbucket?

  • Non c'è alcun uso pratico. Ho un caso
  • Può essere raggiunto con qualsiasi altro mezzo. Per favore dimmi come?
  • È troppo difficile da implementare. Io non credo che questo è un motivo valido

Ecco il mio problema è:

ho implementato le pre-commit, post-merge & post-checkout ganci per mantenere il backup del database differente per ogni ramo.

Scenario: Ora quando commetto il backup del database viene salvato in un file utilizzando il gancio pre-commit. E quando eseguo il checkout del ramo o dell'unione, il database memorizzato nel file viene ripristinato utilizzando gli hook post-merge & post-checkout. Ora la situazione è se qualcuno effettua modifiche nel database dopo il commit e il checkout, le modifiche vengono perse, poiché il database non è stato sottoposto a backup. Il checkout è riuscito in quanto non vi è alcun cambiamento nella struttura del file.

Quindi, in questo caso, desidero un hook pre-checkout per gestire l'attività di backup del database nello scenario sopra.

risposta

0

Ho ottenuto il motivo per cui non è stato implementato. Nella mia situazione faccio il backup del database e lo memorizzo in un file, che fallirà il check-out ogni volta. Quindi questo non sarà pratico per implementare questa funzionalità.

0

È possibile scrivere uno script che esegue il backup quindi checkout. Quindi creare un alias di shell in modo che esegua lo script invece quando si digita git checkout.

+0

Puoi farmi un esempio? – asachanfbd

0

Caso di utilizzo pre-checkout: elimina i file locali non versione generati dall'attività gulp watch:css in modo che vengano sovrascritti dopo il checkout e ricompilati da gulp.

Invece, sto solo andando a scrivere uno script di shell che ottiene la root del repository e quindi elimina qualsiasi elenco di file generati da gulp trovati.

Problemi correlati