git ワークフローに統合したい (そして github にプッシュしたい) Google ドキュメントにスプレッドシートがあります。それを行う、またはそれを支援するツール (または gdoc バージョンを認識するライブラリ) はありますか?
現在のバージョンの csv gdoc を読み書きするgoogle_spreadsheet gemに基づいて、いくつかの古い Ruby ハックが横たわっていますが、リビジョン履歴を抽出するものは何もありません。
git ワークフローに統合したい (そして github にプッシュしたい) Google ドキュメントにスプレッドシートがあります。それを行う、またはそれを支援するツール (または gdoc バージョンを認識するライブラリ) はありますか?
現在のバージョンの csv gdoc を読み書きするgoogle_spreadsheet gemに基づいて、いくつかの古い Ruby ハックが横たわっていますが、リビジョン履歴を抽出するものは何もありません。
私はあなたの質問に興味をそそられたので、今日は小さなプロジェクトをまとめました。
ドキュメント ID を指定すると、Google ドキュメント ドキュメントのプレーン テキストまたは HTML コンテンツを使用して git リポジトリが作成されます。これは、他のファイル タイプで動作するように簡単に拡張できます。動作すると、次のようになります。
$ python gitdriver.py -T 1j6Ygv0ow5A8_ywTMwJbuKVrxrSsSH2wJs3a8Q66mvt4
Create repository "Untitled"
Initialized empty Git repository in /home/lars/projects/gitdriver/Untitled/.git/
[master (root-commit) 24d35e7] revision from 2013-01-08T21:57:38.837Z
1 file changed, 1 insertion(+)
create mode 100644 content
[master fd243ee] revision from 2013-01-08T21:57:45.800Z
1 file changed, 1 insertion(+), 1 deletion(-)
rewrite content (95%)
[master 5ad1a26] revision from 2013-01-09T01:47:29.593Z
1 file changed, 1 insertion(+), 1 deletion(-)
rewrite content (92%)
$ cd Untitled
$ git log --oneline
5ad1a26 revision from 2013-01-09T01:47:29.593Z
fd243ee revision from 2013-01-08T21:57:45.800Z
24d35e7 revision from 2013-01-08T21:57:38.837Z
これには、Google で必要なアプリケーション資格情報を設定する必要があります。また、エラーチェックも行いません。そしてあなたの金魚を食べるかもしれません。これは、API と、このようなことを行う方法のデモンストレーションを目的としています。機能的な製品を意図したものではありません。
gdoc はリビジョン履歴ソースをエクスポートするように設定されていません。
Google ドライブには、ここにあるすべてのリビジョンにアクセスするための API があります。これにより、すべてのリビジョンを簡単にダウンロードできます。次に、それらを 1 つずつ git に追加するスクリプトを作成できます。改訂履歴にはいくつかの問題があります。ここを参照してください。