2011-01-25 9 views
1

私はファイル形式のコンテナとして圧縮フォルダを使用するのが好きです。それらはLibreOfficeまたはDiaに使用されます。だから私は特別な目的のファイル形式を定義する場合、私はフォルダとファイルの構造を定義し、ルートフォルダを圧縮し、単一のファイル内のすべてのデータを持つ単一のファイルを持つことができます。インポートされたファイルは、圧縮されたファイル内のオリジナルとして生きています。この機能を使用してバイナリファイルフォーマットをゼロから定義することは、多くの作業になります。バージョン管理を含むファイル形式

質問:ファイル形式として圧縮フォルダを使用し、フォルダ内のバージョン管理を行うアプリケーションはありますか?メリットはすばらしいでしょう。プロジェクトの状態をファイルにコミットするだけで、バージョン管理は自分のアプリケーションの関数で装飾されます。また、diffsはあなた自身の方法を提示することができます。

圧縮ファイルの操作とバージョン管理のためのライブラリが利用できます。使用されているバージョン管理システムは、リポジトリが作業フォルダ内に存在し、クライアント/サーバモデルを使用したSubversionのように別個ではない分散システムでなければなりません。

あなたはどう思いますか?私はこのアプローチを使ってそこにアプリケーションがあると確信していますが、私はそれを見つけることができませんでした。あるいは、このアプローチに大きな欠点がありますか?

答えて

1

興味深い考え方のようです。 私は多くのアプリケーションが「無制限」の元に戻してやり直しをしていると主張していますが、 ですが、このファイルを開いたのは最近の時刻です。 ご使用のシステムでは、このファイルを開いた直前のバージョンであっても、アプリケーションは以前のバージョンのファイル「 」に「元に戻す」ことができます。これは気の利いた機能かもしれません。

TortoiseHgを見ましたか? TortoiseHgはMercurialを使用します。これは "リポジトリが作業フォルダ内にある分散システム"です。

のではなく、新しい圧縮されたバージョン管理されたファイル形式と、最初からそれで動作するようにすべてのソフトウェアを定義し、 おそらくあなたはMercurialのファイル形式を使用して、それで動作するようにTortoiseHgのとMercurialのソースコードを借りることができます。

2つの異なるアプリケーションを使用しているプロジェクトで作業している場合は、 となります。それぞれのアプリケーションは、プロジェクト全体をわずかに異なる圧縮バージョンファイル形式で保存しますか?

0

私が今見出したのは、OpenOfficeという別名のLibreOfficeには、バージョン管理があります。 LibreOfficeファイルは、構造化されたコンテンツ(XML、ディレクトリ、...)を内部に持つzipファイルです。現在のコンテンツをバージョンとしてマークすることができます。これにより、すべてのバージョンに関する情報を含むVersionList.xmlが作成されます。 Versionsディレクトリが追加され、Version1、Version2などのファイルが含まれています。これらのファイルは、その状態の実際の文書です。

関連する問題