2012-01-09 12 views
8

l'idea è che voglio condividere documenti su gitCome condividere documenti odt/doc oltre git

Avevo pensato di usare Documento di testo (assomiglia docx, odt in termini di funzionalità) che può essere modificato con qualsiasi editor di testo (non binario). dove trovare qualcosa di simile?

qualsiasi soluzione migliore?

+0

docx | odt sono ** binari ** –

+0

@LazyBadger: non è vero al 100%. ODT è compresso XML ... – eckes

+0

@eckes: quando zip diventa testo? Ho dimenticato qualcosa? –

risposta

8

Hai considerato l'utilizzo di LaTeX invece di doc o odt? In questo modo è possibile modificare i documenti con qualsiasi editor di testo e ottenere risultati di bell'aspetto. Ancora meglio: hai le differenze corrette tra le revisioni (indipendentemente dall'SCM che usi).

Se non ti piace l'idea di modificare il documento in un semplice editor di testo, consulta LyX. Fornisce una GUI per la modifica di documenti come si otterrebbe in normali editor di documenti.

Per le soluzioni di hosting git è possibile utilizzare:

  1. github (se i documenti sono open-source, che non credo)
  2. bitbucket (offre repository illimitate, con spazio illimitato e fino a 5 utenti per progetto)
+0

è facile unire conflitti in Lyx? – MhdSyrwan

+0

@MhdSyrwan: vorrei suggerire per utilizzare uno strumento di unione specializzato, ad esempio: ** p4merge ** (di Perforce). Ulteriori informazioni in questa domanda: http://stackoverflow.com/questions/426026/git-on-windows-how-do -you-set-up-a-mergetool –

+0

ma qualsiasi altro strumento non capirà LateX !! lo vedranno come testo complesso che non riesco a capire per unire, c'è un modo per impostare lo strumento di confronto Lyx come strumento di unione? – MhdSyrwan

22

ci sono due strumenti che possono essere utilizzati per consentire ai file odt git diff: odt2txt e oodiff.

Vedi this resource per i dettagli su come impostare questa funzione (comprende anche informazioni su Mercurial e SVN.)

frammento di istruzioni di cui sopra(per git> = 1.6.1):

  • In primo luogo, installare odt2txt e configurare git per consentire l'esecuzione di esso, con l'aggiunta di questo ~/.gitconfig:

    [diff "odf"] 
         textconv=odt2txt 
    
  • Ora, per ogni progetto, non vi resta che chiedere git utilizzare questo driver in .gitattributes o $GIT_DIR/info/attributes, in questo modo:

    *.ods diff=odf 
    *.odt diff=odf 
    *.odp diff=odf 
    
+0

Anche utile [ post del blog] (http://locallost.net/?p=278) sulla fusione dei file odt. – YurB

16

LaTeX è perfetto per combinare per git. Ma se non puoi permetterti il ​​tempo di "tradurre" tutto in LaTeX, penso che una grande opzione che soddisfi le tue esigenze sia l'uso di LibreOffice e il salvataggio dei file nel formato .fodt (Open Document Text - Flat XML). Questi file sono XML non compressi, quindi puoi usare tutta la potenza di git come puoi vedere addizioni e modifiche alla linea del documento per riga.

Questo renderà l'unione un compito facile. Anche i file binari (ad esempio quando includi un'immagine) verranno incorporati nel documento e mostrati come testo. Ovviamente non puoi manipolarli da lì ma puoi rimuovere l'intero tag o modificare gli attributi con l'editor di testo più semplice.

+2

Non conoscevo questo concetto fodt, fantastico, grazie. – Illidanek

1

È possibile usare LaTeX per documenti di testo con formato (o rtf, Rich Text File, se si preferisce un metodo accessibile a chiunque) e fods per fogli di calcolo.