プロジェクトドキュメントプロセスをGoogleドキュメントから一連の自己ホスト型Gitリポジトリに移行しようとしています。
テキストドキュメントは十分にGitに対応しています。通常は特別な書式設定は必要ないため、複雑な場合にLaTeXを埋め込むオプションを使用して、すべてをたとえば multimarkdown に変換します。 。
しかし、スプレッドシートはまったく別の話です...バージョン管理システムにやさしい(そしてできれば、Markdownと同じくらい人間が読める)スプレッドシート形式のようなものはありますか?
"Friendly format":Gitは(it does n't )という形式でうまく機能し、人間が読める形式の差分( 外部ツールを含む追加構成 は問題ありません)
明らかに、Markdownフレーバーは静的テーブルを作成することを許可しますが、SUM()
などのようなものを使用できるようにしたいと思います(CSVにも同じ問題があることに注意してください。)WYSIWYGは問題ありませんが、まともなエディター/ツールのサポートは素晴らしいでしょう。
更新:Linuxに適した回答のみをお願いします。 MS Officeのものはありません。
プレーンxmlであるlibreOffice/open-office-spreadsheet-non-Zip-xml-fileformat "* .fods"を使用することもできます。 @glenatronのコメントはこの形式にも適用されます。
標準のオープンオフィススプレッドシート形式「* .ods」はzip形式のxmlであり、gitにはあまり適していません(@ Egryan/@ emuddudleyの回答と同様)。
これはあなたのニーズに合わないかもしれませんが、他のものに合うかもしれません。 Org-mode for Emacsにはtable.el
が含まれており、これはOrg-modeの特定の機能強化とともに、スプレッドシートに対して非常に堅牢なソリューションをすべてプレーンテキストで提供します。より多くの情報(このサイトの範囲をはるかに超える)は、Org-modeのWebサイトおよび manual 、特に spreadsheet tutorial で入手できます。
pyspread はどうですか?それは強力で、素敵なGUIが付属しています。
First Stepsページ によると:
Pysファイル形式はバージョン0.2.0で変更されました。これは、次の構造を持つbzip2形式のテキストファイルです。
[Pyspread保存ファイルのバージョン]
0.1
[形状]
1000 100 3
[グリッド]
7 22 0 'Testcode1'
8 9 0 'Testcode2'
[属性]
[] [] [] [] [(0、0)] 0 'textfont' u'URW Chancery L '
[] [] [] [] [(0、0)] 0 'ポイントサイズ' 20
[row_heights]
0 0 56.0
7 0 25.0
[col_widths]
0 0 80.0
[マクロ]
マクロテキスト
Bzip2化されているという事実は役に立ちませんが、少なくともかなり読みやすいテキストにアクセスできます。
ライセンスはGPLv3です。
CSV(カンマ区切り値)
データを処理するだけの場合は、おそらく最も単純で最も一般的にサポートされている形式です。
バージョンを比較したい場合は、作業を簡単にする必要があります。
ああ、GoogleドキュメントはCSVのインポート/エクスポートを完全にサポートしています。
更新:
次に、Google Appsスクリプトを作成して、エクスポート時に数式を文字列化し、インポート時にその逆を行います。探しているフォーマットが存在しないため、工夫が必要です。
Microsoft Office 2007以降では、保存時にデフォルトで非難的なxml形式が使用されることを知っています。したがって、これはGitにとって友好的なはずです。 Open Officeは、よりオープンソースのソリューションを使用したい場合にも、xml形式で保存します。 XMLはテキスト形式なので、gitはかなりうまく処理できるはずです。
Googleドキュメントから移動しているので、ダウンロードして、XMLベースのドキュメントを開くことができます。
編集
Microsoft/XML以外のソリューションが必要なため、Open OfficeにCSVを常に保存できますが、この形式に保存することでどれだけの機能が失われるかはわかりません。
これは、あなたが望むものとは正確に一致しない場合があります。libreofficeを使用すると、外部ファイルを参照できると思います。データベースのように扱うスプレッドシートと、インターフェースとなる静的libreファイルを用意できます。コールバックしない限り、バージョン管理されたファイルで簡単にアクセスできなくなりますが、機能します。
これに関する別のかなり大きな問題は、それが一方向性であることです。