質問
私は現在、PHPプロジェクトにパートナーと働いています。
私たちは、ローカルサーバーへの直接の両方の編集(すべてのファイルもWAMPスタックを実行しているサーバー、上に格納されています)。 私は、Web経由で、監視し、htdocsのフォルダにすべての変更を保存し、リモートSVNリポジトリを更新するだろうSVNクライアントを探しています。
私は、ウェブインタフェースを介してSVNクライアントを操作することができればそれは素晴らしいボーナスになります。
たとえば、私は、サーバーへのfile1.php
を保存すると言います。これは、SVNのWebサイトでfile1.php
を更新します。
私は突然、ファイルへの私の最新のリビジョンが不良であることを発見したい場合、私は、サーバーに頭の上(または自分のコンピュータからいくつかのWebインターフェイスを使用)、そして古いリビジョンでfile1.php
を置き換えることができます。
私はちょうど私たちのローカルマシン上のSVNサーバをインストールする必要はありません。
任意の勧告?
解決
私はこれを行うには任意のソフトウェアを知りません。それはおそらく、この標準のコマンドラインのsvnクライアントを使用してスクリプトに難しいことではないでしょう。即ち変更されたすべてのものに定期的にチェックを実行するバッチ/シェルスクリプトを持っています。
これを行うことに対して、と、Iだろうの非常に強くのアドバイス!
ソースコントロールの通常の作業モデルは、誰もがで動作するようにローカルコピーを持っているということで、その後、中央リポジトリにその変更をチェックします。
明示的な手動チェックインが、あなただけ(一般的に)働くものにチェックを確認しますと、あなたは貴重なチェックインコメントを与えることができます。
次に、サーバは、ソース管理リポジトリからの既知の正常なバージョンに更新することができます。
本番システム上で作業しているように、これが鳴ります。私は強くDEV環境(S)と上記の手法を用いて検討お勧めする。
他のヒント
あなたの意図は、バージョン管理、自動バックアップシステムとしてSVNを使用することです。このような場合は、最も簡単なものは、変更されたファイルはSVNにそれらをコミットするためのsvnコマンドラインクライアントを呼び出します。
ファイル監視ツールを使用することです私はまだ試していませんが、 SVN-Monitorをのは便利かもしれません。あなたはそれで動作するように、上記のToirtoiseSVNクライアントが必要になります。
私は(私も同じ悩みを持っていた)いずれかを発見していません。
私たちは、2つの段階でこれを行います。
私は、ソフトウェアの一部を開発する必要がある場合 - 私はトランクを分岐し、他の人が自分のタスクを完了するために、同じことを行うときにそれを変更します。その後、我々は枝をマージし、それらをテストします。トランクをテストした後、そのマージされたパッチによって更新されています。
そして最後にcronジョブ(または手動で)、モードをメンテナンスするためのリソースを設定するスクリプトを実行し、必要に応じてのhtdocsと輸出が新しいトランク、その後のchown / chmodコマンドをすべて削除します。
我々はすぐにバグの変更を元に戻す必要がある場合は、このスクリプトは、我々はneccesaryリビジョンを設定、管理パネルからいつでも実行することができます...
あなたは2つのコードベースに対して動作する2つのコミッタを持っているあなたが提案するシナリオ、ソースコード管理を配布する溶液(バザール、Gitの、Mercurialのを)検討する必要があります。その後、地元のコミットを持っており、必要に応じて2つの宛先への変更をプッシュとプル可能性があります。
しかし、あなたは、すぐにそれが
の変化を検出すると、両端のファイルの変更を監視して、必要に応じてのsvnクライアントコマンドを呼び出すユーティリティのいくつかの並べ替えを必要とする場合がありますあなたの当面の問題に行きます私はそれが可能か、そう簡単だとは思わない。
あなたは、クライアント上でSVNの下のフォルダを置くときは、特定のフォルダ構造がように、ロックに変更され、どのようなファイルを追跡するために作成されます。 (あなたがやりたいように)悪い考えですが、最初にそれらをチェックアウトせずにファイルや編集のファイルをチェックアウトすることなく、サーバSVNフォルダを更新しようとします。
zipファイルにあなたのhtdocsフォルダを集めるAスケジュールされたジョブ、ファイル名を介したバージョンにして、いくつかのリモートストレージにアップロードし、これを管理するための簡単かつ迅速な方法であることができます。
私にはわからないかもしれない場合はsvn <のhref = "http://svnbook.red-bean.com/en/1.1/ch05s02.html#svn-ch-5-sect-2.1" のrel =」 noreferrer nofollowを ">ポストコミットフックには、右のスクリプト与えられた、いくつかの使用であるかもしれませんか?あなたは自動的に現在のリビジョンの生産システムに(ちょうどフックを呼び出す前に作成された、すなわち改訂)からの変更を展開することができます。私は、これはあなたが求めているものの一種であると思いますか?
私は、私はあなたが提案しているもののはお勧めできませんネスについてここでは他のコメントのいくつかに同意することを言わなければなりません。私は手動で展開プロセスを開始し、ソースはその後、リポジトリからプルされた溶液をお勧めします。
謝罪私が誤解している場合。
の編集の質問を再読した、私はあなたがそれから展開を自動化されていない、リポジトリに自動コミットを探していると思います。これがそうであるように、他の人が提案する予定のスクリプトソリューションは、私も考えることができます最善のアプローチです。それを示唆した人には+1ます。