Come posso fare in modo che git-svn usi un particolare ramo svn come repository remoto?
-
08-07-2019 - |
Domanda
Un avvertimento: sono un n00b in git
in generale. Il mio team utilizza i rami delle caratteristiche in svn
e mi piacerebbe usare git-svn
per tracciare il mio lavoro su un particolare ramo di caratteristiche. Ho seguito (approssimativamente) il il post di Andy Delcambre per configurare il mio repository git
locale, ma quelle istruzioni sembrano aver portato git
a scegliere il ramo svn
che era cambiato più di recente come telecomando repository; il problema è che non è il ramo a cui tengo. Come posso controllare quale ramo git-svn
usa? O mi sto avvicinando a questo completamente sbagliato?
AGGIORNAMENTO: ho usato le opzioni -T
, -b
e -t
(nel mio caso perché svn
ha più progetti, ma voglio che il repository git
contenga solo il progetto a cui sto lavorando).
Soluzione
Muchas ringrazia il Blog di Bart per questo utile riferimento per i rami svn in git . Apparentemente tutto ciò di cui avevo bisogno era specificare un ramo remoto durante la creazione del ramo git
, ad es.
git checkout -b git-topic-branch-foo foo
dove foo
è il nome del ramo remoto.
Altri suggerimenti
Potresti anche dare un'occhiata a questo: git-svn è una droga gateway - robby on rails .
Ho usato qualcosa del genere quando avevo bisogno di assicurarmi che il mio ramo locale stesse puntando al ramo svn remoto corretto:
git branch -r
per ottenere il nome del ramo remoto che voglio monitorare. Poi
git reset --hard remotes/svn-branch-name
per cambiare esplicitamente il mio ramo locale in modo che punti a un altro ramo remoto.
Prima dovevo eseguire 'git svn fetch', poiché il ramo che volevo associare era stato creato dopo il mio client git.
Uso git-svn ma non ho usato le funzionalità che interagiscono con i rami SVN. Detto questo, noto che il tutorial che stavi seguendo non utilizzava il -T, -b , -t opzioni per git svn init. Queste opzioni dicono a git-svn come sono chiamate le directory trunk / rami / tag a monte, il che potrebbe essere importante nella tua situazione.