ファイルの変更履歴を保存する

ほぼ全員が、プロジェクトの開発中に誤って誤ってファイルに変更を保存してしまい、操作を取り消せないという状況に遭遇しました。 たとえば、Photoshopで1つの画像を編集したことがありますが、不注意で保存する場合、保存用にまったく別のファイルを選択し、永久に上書きしました。 そのファイルの再描画に1時間半かかりました。これはすべて、20秒ごとに手動でバックアップを作成することが不可能であるためです。

この事件の後、指定したディレクトリとそのサブディレクトリをN秒ごとに監視して新しいファイルを追加し、古いファイルを変更するプログラムを作成することになりました。 古いファイルに新しいファイルまたは変更がある場合、彼女はこのファイルのバックアップコピーをfile_file_date_timeの下の指定されたフォルダーに作成します。 この状況では、データを失うことは困難です。なぜなら、 すべての変更の完全な履歴があります。

そのようなプログラムは2年前に私によって書かれました。 彼女は私のプロジェクトをさまざまな事故から繰り返し救いましたが、つい最近、私はいくつかの変更を加えました。

プログラムはDelphiで書かれています。 コードの品質がただ嫌なだけで、すべてを書き直す時間がないので、すぐに言いたいです。 その機能を完全に実行します。 私は2年間Delphiで何も書いていませんが、私は非常に疲れていることを認めています-PHPとの違いは大きいです。

これがメインプログラムウィンドウの表示です
画像

そしてここにコピーが保存されるディレクトリがあります
画像

個人的に、私はコピーをDropboxにアップロードすることを好みます-何かを失うことは確かに不可能です。

先ほど言ったように、最近いくつかの変更を加えました。 具体的には、プログラムが起動するたびにすべてのファイルを再度コピーするのではなく、変更されたファイルのみをコピーするようにしました。 これを行うには、バックアップが保存されているフォルダーに、ファイル名とそのmd5ハッシュが保存されているlastScan_ [profile_name] .iniファイルを作成します。

プログラムは、その設定をレジストリに保存します。 監視が実行されているとき、閉じるボタンはトレイ内のプログラムを最小化します。 そうでなければ、すべてが明確で明白だと思います。

私自身から、これはウェブ開発に不可欠なものであると付け加えます。

ソースを含むプログラムをここからダウンロードします。
http://dl.dropbox.com/u/35608229/BackupMonitor.rar
http://narod.ru/disk/44036120001/BackupMonitor.rar.html
http://depositfiles.com/files/i9o9q17pg

Source: https://habr.com/ru/post/J140354/


All Articles