2009-12-21 23 views
5

Bazaar ha uno pseudo-protocollo Launchpad (lp :) che consente all'utente di operare in diramazioni remote senza scrivere la posizione completa del Launchpad, sto cercando un modo per creare i miei pseudo-protocolli in un modo come questo (simile a GIT):Bazaar (bzr) posizioni predefinite

bzr remote my sftp://[email protected]/home/myuser/myrepo/ 
bzr push my:mybranch 
bzr push my:otherbranch 
bzr push my:anotherbranch 

... invece di ...

bzr push sftp://[email protected]/home/myuser/myrepo/mybranch 
bzr push sftp://[email protected]/home/myuser/myrepo/otherbranch 
bzr push sftp://[email protected]/home/myuser/myrepo/anotherbranch 

... che è una rottura di palle.

Ho letto su bazaar.conf ma sembra in grado solo di impostare posizioni push globali per ogni ramo/repository. Un altro modo che ho visto è usare l'alias, ma ha lo stesso problema, è molto brutto quando serve per creare nuovi rami.

È possibile eseguire questa operazione senza modificare il codice BZR? Questo dovrebbe essere ovvio ...

risposta

8

La mia sintassi xxx denominata directory services in bzr. Puoi definire il tuo servizio di directory tramite plugin (scrivi in ​​Python).

Un buon esempio di tali plug-in è bookmark plugin. Controllalo.

Forse questo plug-in sarà sufficiente per le vostre esigenze.

+0

lavoro grande grazie! ma questo dovrebbe essere installato di default. Non posso votarti ... ancora (nota l'indiretto) – mkotechno

7

La soluzione è installare plug-bzr segnalibro come ~/.bazaar/plugins/segnalibri, quindi:

bzr bookmark my sftp://[email protected]/home/myuser/myrepo/ 
bzr push bm:my/mybranch 
bzr push bm:my/otherbranch 
bzr push bm:my/anotherbranch 
Problemi correlati