2010-05-12 13 views
11

C'è un repository master di sovversione da cui ho clonato un repository git da. Ho un sacco di file ignorati nel mio .gitignore che vorrei che il repository svn fosse a conoscenza.Come puoi indicare i file da ignorare in svn quando usi git e il ponte git-svn?

So che posso usare git svn show-ignore per estrarre l'elenco ignorato da subversion, ma come posso fare il contrario? Invia un elenco di file da reindirizzare al repository SVN?

versione Git (e git-svn è la stessa versione):

git --version 
git version 1.7.0.5 

risposta

5

Ok, quindi un metodo (fastidioso) che ho trovato è quello di:

(passo convenienza) aggiungere il file gitignore nel repository in modo che sia tracciato.

Fare un svn checkout.

svn propedit svn:ignore ./

Aggiungere in tutte le cose che è nel file gitignore monitorati.

Questo è piuttosto brutto, però, e a chi piace davvero toccare & checkout svn quando si lavora con git? Qualcuno ha un'alternativa migliore?

1

Git svn non supporta questo, quindi si dovrebbe fare da soli su un checkout svn separato. Dal manuale:

Ignoriamo tutti gli immobili ad eccezione di SVN svn: eseguibili

Sarebbe davvero bello però se questa non era la risposta ...

+0

Che cosa significa "così dovresti copiarlo da solo"? – Kzqai

+0

@Tchalvak, significa che dovresti fare ciò che hai detto (che può essere copiato o meno). Lo modificherò poiché non aggiunge valore alla risposta. – iwein

0

Sì, è possibile . Basta installare SubGit nel tuo repository SVN. Funziona come un bridge concorrente e esegue la traduzione bidirezionale (attivata da hook). Traduce i tag SVN in tag Git, rami in rami, svn: ignora in .gitignore, svn: stile eol in "eol" e "testo" attributo di .gitattirbutes, rami SVN completamente uniti a Git merge-commits; e viceversa.