タイムマシンとソース管理?


18

最終的に、毎日の終わりにプロジェクトのコピーを圧縮するのではなく、コードに何らかのバージョン管理を使用し始めると確信しました。

Tortoise SVNをダウンロードし、それを使用して、私のhddにリポジトリーを作成しました。私はそれを2日間使用していますが、実際にエクスプローラでプロジェクトを手動でコピーするよりも実際に使用するのが面倒だと言わざるを得ません。確かに、増分の変更のみを保存しますが、今日の安価なディスクでは、小さなプロジェクトしかない場合、それが議論であるとは本当に言えません。古いバージョンのファイルをすばやく閲覧する簡単な方法を見つけられませんでした。

私が欲しいのは、コードを作成中に完全に透過的な無限の取り消しです。ファイルを保存すると、バックアップが必要になります。チェックアウトしたり、チェックインしたり、ファイルの移動を開始したりしません。OS X用のTime Machineを試したことはありませんが、まさに探しているもののようです。

そのようなプログラムはWindows用に存在しますか?プロジェクトが動作しているときなどにタイムスタンプにタグを付けることができるように、できれば無料で何らかのタグシステムを使用してください。

たぶん、私は単一のコンピューターで単独で仕事をしていると付け加えるべきでしょう。

更新: 何人かが、なぜバックアップが必要なのかと尋ねました。私は一人で仕事をしているので、何かが台無しになることを心配することなく、ソリューションをすばやくハッキングできるようにすることがほとんどです。


4
SCMとTime Machineの主な違いは、SCMでは明示的にコミットし、すべてのコミットを取得できるのに対し、Time Machineでは自動バックアップ(1時間ごと)が行われ、一部は時間とともに失われることです。どちらも選択しません)。
mouviciel

2
私は、自動エラーなしで完了し、プラスlableユニットテストに合格したときには、プログラマーの多くのためのローカルブランチには良いかもしれないことをすべてのビルドにコミットだと思う
イアンRingrose

1
バージョン管理の問題は、probjectの唯一の開発者である場合、バージョン管理システムに追加していないファイルを停止するのは非常に難しいことです。個別のビルドサーバーを使用することはできますが、設定するのはさらに多くなります。すべてのファイルをバックアップする方が安全です。
イアンリングローズ

回答:


39

あなたはソース管理の利点を本当に過小評価していると思います。ダスティンが指摘したように、分岐、マージ、共有があります。また、ソース管理システムを使用すると、コードの各行が最後に変更された時期を簡単に把握できます。SVNは、ファイルの名前を変更したり、別のディレクトリに移動した場合でも、ファイルの履歴を追跡できます。変更を上書きすることを心配せずにデスクトップ、ラップトップ、および他のコンピューターで作業できるため、マージは開発者が1人だけであっても問題を解決できます。


手動でのコミットが必要なため、Jeffの(および私の)ニーズはソース管理で満たされていません。毎分コミットすることなく、作業コピーで行った毎分ごとの変更をトレースできることに価値があります。そして、リポジトリを汚染することなく。一部のIDE(Eclipseなど)では、プロジェクトファイルを過去にさかのぼって参照できます。ただし、特定のIDEを使用してプロジェクトを設定する必要があります。独立したツールに同様の機能があればいいと思います。
ヴィーム

@JohnB SVNには「自動バージョン管理」と呼ばれる機能があります。これにより、リポジトリを標準のWebDAVフォルダーとしてマウントでき、ファイルを保存するたびにコミットが実行されます。十分な頻度で保存すると、ファイルを保存した任意の時点に効率的に戻ることができます。VS.Netのように各文字をCtrl + Zで押すことができるほど細かくはありませんが、いずれにしても10分ごとに保存する必要があります。あなたがプロジェクトに取り組んでいる単一の開発者であれば、おそらくうまくいくでしょうが、私はそれについてあまり経験がありません。(svnbook.red-bean.com/en/1.7/svn.webdav.autoversioning.html
Kibbee

ありがとう、キブビー。そのことについてのVonCの投稿を見ました。これは私が見た数少ないオプションの1つであり、唯一の無料のオプションです。以下に、ソース管理サーバーをセットアップする必要のない専用の製品もいくつかあります。これは素晴らしいことです。しかし、彼らはお金がかかり、彼らが私が必要とするよりも多くの添えものを持っているように見えます(または、そのうちの1つはUIの作業が必要です)。私が欲しいものに最も近いものは、Windows Explorerのコンテキストメニューの統合を備えたDropBoxです。デフォルトで30日間の履歴が保存されますが、Pack Rat機能に料金を支払うと、無期限に保存されます。しかし、それはクラウドアプリです。
-Vimes

21

それは自動バージョン管理(Subversionにとどまるため)です:

自動バージョン管理は、汎用WebDAVクライアントがDeltaVサーバー(mod_dav_svnなど)に書き込むことができる機能であり、サーバーはバックグラウンドでサイレントにコミットを実行します。つまり、Apache httpdをSubversionサーバーとして使用する場合、最新のオペレーティングシステムのほとんどはリポジトリをネットワーク共有としてマウントでき、技術に詳しくないユーザーは「透過的な」バージョン管理を無料で取得できます。(もちろん、技術ユーザーはSubversionクライアントを使用してリポジトリ履歴を調べることができます。)


2
間違いなく良い答えとOPが望むものに似た解決策、明示的なコミットなしの定期的なバックアップ。

12

バックアップソリューションとバージョン管理を混同しないでください。どちらも重要ですが、目的は異なります。本当にすべきなのは、バージョン管理(svn、cvs、mercurial、gitなど)を使用して、HDD以外の場所、できればオフサイト(有料ホストまたはS3)に自動的にバックアップすることです。または、100%リモートに移動して、SVNリポジトリをホストする人を見つけます。Unfuddleをお勧めします。あまり手間をかけずに、そこに無料のSVNリポジトリを設定できます。

弾丸をかむとSVNを使用します。慣れているものほど簡単ではないかもしれませんが、非常に具体的なロールバックを行うか、ファイル間の変更を比較する必要がある場合は、喜んでいます。



6

完全開示:Altaro Softwareで働いています。

Windows用のTime Machineが必要な場合は、「おっと!バックアップベータリスト

私たちは新しいソフトウェア会社Altaro Softwareであり、「Oops!」と呼ばれるソフトウェアバックアップ製品/バージョン管理製品を開発しています。バックアップ'。おっとっと!バックアップは、従来のバックアップ製品と軽量バージョン管理システムのハイブリッドです。おっとっと!バックアップは、ドキュメント、写真、その他のファイルへの変更を自動的に追跡し、任意の時点までバックトラックすることができます。ある程度までは、Time Machine for Windowsと同等です。

私が軽量バージョン管理を言ったことに注意してください-これは適切なバージョン管理製品を置き換えることを意図した製品ではありません。開発者はSVNとOopsを使用します!同時にバックアップします。彼らはチェックイン/アウト機能を備えた適切なバージョン管理のためにVSNを使用しますが、Oopsも使用します!チェックアウトプロセス全体を実行することなく、以前のファイルバージョンをすぐに見つける必要がある場合があるため、Oopsの瞬間のバックアップ。

私たちは、ユーザーエクスペリエンスと目を楽しませることに多くの投資をしました。アイキャンディはユーザーエクスペリエンスを意味するものではないと理解しているためです。

ベータ版はまもなくベータ版に移行し、ベータ版のテスターを募集しています-http ://www.altaro.com/download.phpを試してみてください。これらのページでは、製品のスクリーンショットも見ることができます。

あなたの意見と建設的な批判は大歓迎です(悪いことを聞くのが好きでしょう...良いことよりももっと)

前に言ったように-おっと!バックアップは、適切なバージョン管理製品の必要性を置き換えるものではありませんが、それを補完します。バージョン管理の方法として使用できますが、チェックイン/チェックアウトはできず、新しいフォルダーを作成して手動で分岐を行う必要があります。

プラグでごめんなさい!!

デビッドベラ-david@altaro.com


機能リストは非常に良いスタートだと思います。それは完全な復元をサポートしていますか(ハードウェア障害の場合、WindowsのTime Machineの要件、私に尋ねると)。そして、気にする人はほとんどいませんが、複数の(冗長な)バックアップディスクを処理できますか?または、そうでない場合、フルバックアップをコピーする方法(Time Capsuleのように、長時間かかります)次のリリースの場合:特定のファイルシステムの使用を必要とする一般的なソフトウェアのプラグインをお勧めします。電子メールプログラムの場合:ファイルシステム上でメッセージがどのように検出されるかを知らずに、メッセージを検索および復元します。そして:ローカリゼーション?
アルジャン

こんにちはArjan-いいえ、それはディスクイメージング(Acronis&Ghost)をサポートしていません。正直に言って、私たちがそのようにするべきかどうかはわかりません。フィードバックに基づいて確認します。ベアメタルに使用できる優れた製品は既に存在するため、現在はこの市場に参入せず、Oopsの作成に専念します。市場で最高のポイントソリューションをバックアップします。代わりに、ビットレイヤーではなく実際のコンテンツにバージョン管理の部分に焦点を当てています。現在、MS Officeファイル、画像、テキストベースのファイルなどのプレビューをサポートしているため、「アプリケーションに対応した」プレビューがあります。引き続き追加します。
デビッドベラ

私はある程度Time Machineに相当すると言いました。私が聞いたところによると、Apple Time Machineに最も近いのはRebitです-自分でテストしたことはありません。今のところ英語のみですが、ローカライズを開始する準備ができています。ベータ版で試してみたい場合は、私にメールを送ってください:)マルタ(ヨーロッパ)の
David Vella

「サラム」別名魔神の「キャンディス」が残したいくつかのコメントを経由した後:あなたの開示について1 ;-)(superuser.com/questions/7423/time-machine-for-windows/... / stackoverflow.com/questions/274948 /タイムマシンのための窓/ ... / serverfault.com/questions/1918/...
Arjan

4

Time Machineに非常によく似たソリューションが、先ほどドイツのc'tマガジンで発表されました。記事自体は60セントで利用可能ですが、スクリプト自体は無料です:http ://www.heise.de/ct/ftp/06/09/126/

基本的には、rsyncを使用して、データを外部NTFS形式のドライブにバックアップします。新しいバックアップごとに、バックアップディスクに新しいファイルのみが保存されますが、他のすべてへのハードリンクが作成されます。事実上、各バックアップごとに完全なフォルダー構造が表示されますが、最初の完全バックアップに必要なスペースと後で行われる変更のみを使用します。

それはTime Machineほど派手ではありませんが、同じ技術です(Time Machineは私の知る限りrsyncも使用しています)。


2

Time Machineは、やや普通のバックアップ/復元ソリューションです。自動化された毎日の増分バックアップを備えたWindowsバックアップツールを使用すると、ほとんど同じことができます。ただし、以前の(毎日の)状態を復元できる場合でも、最速のソリューションではない場合があります。


2

SVNは、単独の開発者にはあまり効果的ではありません。BZRをご覧ください。私はすべての個人プロジェクトとホームディレクトリにBZRを使用し、大規模な作業プロジェクトにのみSVNを使用します。


面白い。localhostであっても、いくつかのサーバーで使用しますか、それともローカルファイルシステムのみで動作しますか?
ピロ08年

1
「SVNはソロ開発者にはあまり効果的ではありません」。それはかなり包括的な声明だと思いませんか?
mwjackson 08年

1
ジャッコ、選択肢に自分自身を教育し、あなたは同意するでしょう。
ダスティンゲッツ

1
phil、すべてを高速化し、アクセス許可の問題を回避するために、リポジトリのローカルコピーが常にありますが、チームと連携する必要がある場合は、オプションでリモートのもの(共有、ウェブサイト、ftpなど)にプッシュ/同期します。ウェブサイトを読んでください。
ダスティンゲッツ

BZRとSVNの主な違いは、BZRが配布されていることです。OPは1台のコンピューター上でほとんど単独で動作するため、この場合、分散ソース管理の利点が追加された複雑さを上回るとは思いません。
redtuna

2

Genie Timeline 2.0は先週公開されています。

「別のタイムラインプラグ」を知っています。...しかし、そうではありません。

タイムライン2.0は完全に書き直されており、これまでのところ、Webに関する一般的なコンセンサスは非常に肯定的です。

何よりも、ほとんどすべての機能がGenie Timelineの新しい無料版で利用できます。

Genie Timeline 2.0 Freeの仕様:http : //www.genie-soft.com/Free_products/free_timeline.aspx

ダウンロード:http : //download.cnet.com/Genie-Timeline-Free/3000-2242_4-10967059.html?tag=mncol

製品の有料バージョンは、古いバックアップの暗号化、圧縮、および自動パージを追加します。

開示:バージョン2.0のプロジェクトリーダーでした


開示のために+1。Time Machine for Windowsも参照してください。これは、この質問を続けるのに適した場所だと思います。
アルジャン

1

ソース管理/複数のバックアップで何をしたいですか?

私の見解では、ソースコード管理には2つの理由があります。構成管理と、開発者の指のトラブル/愚かさに対する保護です(多くの証拠があります)。後者が問題である場合、以下の提案(または別の回答で推奨されているFileHamster)が仕事をします。

ダスティンゲッツが示唆するように、構成管理やブランチなどに関する場合、SVNまたは他のソースコード管理プログラムの推奨事項は、私の提案よりも優れています。

だから、それを使用せず、無料ではない($ 32)が、グーグルが現れた

TrackMyFiles- http: //www.trackmyfiles.com/en/features/

  • ファイルの変更を自動的に追跡および保存します
  • 古いファイルバージョンを表示および復元できます。
  • 重要なファイルバージョンには明示的にラベルを付けることができます
  • MicrosoftWord®ドキュメントやMicrosoftPowerpoint®プレゼンテーションなど、ほとんどのファイルタイプに対応
  • デルタ圧縮アルゴリズムによる変更の効率的な保存
  • シームレスな操作のためにMicrosoftWindows®File Explorerに統合

そのWebサイトによると、60日間の試用版が利用可能

または、Vistaを使用している場合は、シャドウコピーが組み込まれています。http://en.wikipedia.org/wiki/Shadow_Copyを参照してください


1

@LukmanとPaul、通常のドキュメント用のこれらの簡略化されたバージョン管理システムのアイデアは好きですが、ソースコードにそれらを使用するのは間違いだと思います-ブランチ、マージ、および共有ができないことは本当にあなたを妨げます。


1
依存します。OPが要求したものに適合します。私の見解では、ソースコード管理には2つの理由があります。構成管理と、開発者の指のトラブル/愚かさに対する保護です(多くの証拠があります)。最初が問題である場合、私はあなたに同意します。2番目の場合、これらのソリューションはすべて実行されます。
原型のポール

1

いくつかの考え:

SVNにプラグインしているように見えるSVKが好きかもしれません。自分で試したことはありませんが、面白そうです。

http://svk.bestpractical.com/view/HomePage

Tracなどのツールは、適切なSVNリポジトリブラウジングを提供するため、検討する価値があります。

検索する適切な専門用語を見つけられない場合は、「スナップショット」を検索してください。また、ビルドシステムに何らかのアーカイブプロセスをビルドして、makeを実行するたびにスナップショット(または状況に応じて適切なもの)を自動的に取得することもできます。


1

cron(googleを検索して好きなものを選んでください)があり、コマンドラインスクリプトを使用して、数時間ごとにソースフォルダーでpkzipcを実行します。cronの開始をスタートアップに結び付けたら、開始して忘れてしまいました。遅くてブレインフリーズしたときにdel / f / s * .csと入力すると、1回節約できました


1

Windows Vista Business、Enterprise、およびUltimateには、この機能が組み込まれています;)


それは何と呼ばれ、正確に何をしますか、トレードオフは何ですか?シャドウボリュームコピーについて話しているのでしょうか?
redtuna

1

AppleのTime Machineに興味があり、WindowsプラットフォームOSを使用している場合は、これを確認してください。

http://www.genietimeline.com

ベータ版は間もなくリリースされます...登録してください... Genie Timelineを手に入れるのが待ちきれません...

どうやら、その機能にはリアルタイムCDP、無限ファイルバージョン管理、自動バックアップ、コアへのウィンドウの統合が含まれます...私はこの種のソフトウェアがWindowsで長い間リリースされるのを待っています...


レビュー:pc-tutorials.suite101.com/article.cfm/…「最も一般的なユーザーファイルを自動的に検出する」とは、ユーザーが作成したファイルのみをバックアップするための回避策です。システム全体を復元する方法は?たとえば、電子メールソフトウェアとの統合はないようです。メッセージを削除した後はどうすればよいですか?メールがハードドライブのどこにどのように配置されているを知る必要がありますか?また、単一のメッセージを復元できますか?事実上すべてをバックアップし、他のソフトウェアと統合することで、Time Machineは他に類を見ません。残念。
アルジャン

1

IDEにプラグインできるバージョン管理を使用することをお勧めします。これにより、作業が簡単になります。ソースツリーで[更新/コミット]をクリックするだけで完了です。


1

私は、dropbox(http://www.getdropbox.com/)を使用してプロジェクトを保存し、作業したいです。作業内容が自動的にバックアップされるだけでなく、リビジョンも保持されます。


頻繁に保​​存すると、これはDropBoxリポジトリでの改訂の大きな無駄になります。
パトリックデジャルダン

1

Windows Server 2003以降には、Time Machineに似ていますが、ネットワーク化されたエンタープライズ環境向けの「シャドウコピー」機能があります。本当に必要な場合は、ローカルで設定できる場合があります。

ただし、それは本当に優れたソースコード管理に対する劣ったソリューションになります。ソース管理を使用すると、コードベースのすべてのコード行の完全で詳細な履歴を表示できます。あなたがそれを試してみるまで、それがどれほど価値があるかを理解するのは難しいです。

シャドウコピー



0

文字通り「Time Machine for Windows」を探している場合:Windows VistaにはTime Warpが付属しています(コードネームです。完成した機能の名前を忘れていました)。OS XのTime Machineとほとんど同じですが、誇大宣伝はほとんどありません。


1
その名前はシャドウボリュームコピーであり、おばあちゃんにも使いやすいです。バックアップするファイルの種類(「音楽」、「写真」など)のみを選択でき、監視するフォルダは選択できません。今すぐバックアップを行うように指示しない限り、1日に1回しか実行されません。

0

Flashbakeをお試しください。m分(0の場合もあります)に変更されていないファイルをn分(cr​​onおよびおそらくWindowsスケジューラ経由)ごとにバックアップできます。Pythonが必要なので、CygwinまたはActiveState Pytonが必要です。gitに基づいており、非技術的なタイプ向けに設計されています。



0

SlickEditには、あなたが説明しているものに似た素晴らしい機能があります。作業中のファイルを保存するたびに、ローカル(差分)バックアップが作成されます。余暇は、ローカルファイルの履歴を振り返ることができます。これを使用して、SlickEditも統合できるSVNリポジトリを補完できます。





0

Mercurialはこの仕事に最適です。

コードのスナップショットを撮りたいときはいつでも、コマンドラインで行うことはこれですべてですhg commit 。完了です。

ファイルのさまざまなバージョンを参照する場合は、TortoiseHGを使用すると、問題のファイルを右クリックしてグラフィカルコンテキストメニューを使用するのが簡単です。

また、すべてのサブフォルダーを隠し.svnディレクトリーで散らかさないため、SVNよりも優れています。


コミット、プルに時間を費やしたくない場合はどうすればよいですか?ただし、Google Docsはローカル以外のすべての変更を追跡する自動のものです。何を提案しますか?
スカン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.