0

私はSVNにかなり慣れていないので、これは単純なものかもしれませんが、すでに1日かかったことを保証します。これはセットアップです:

Apacheは/www/の下にインストールされ、Webサイトは/www/htdocs/example.com/www/の下にあります

動作しているSVNサーバー(同じマシン)があり、コミット後に手動または自動で(フックを使用して)コンテンツを宛先(/www/htdocs/example.com/www/)に公開したいと思います。リポジトリは/svn/www.example.comの下にあります。これまでに2つの問題が発生しました。

  1. 「 svnexport--forcefile:///svn/www.example.com /www/htdocs/example.com/www 」を実行すると、新しいディレクトリが作成されます:/www/htdocs/example.com/www/ www.example.com。ルートディレクトリなしでエクスポートを実行できますが、その内容のみを実行できますか?
  2. ウェブサイトのルートディレクトリ(/www/htdocs/example.com/www)にはすでにユーザーがアップロードしたファイルがあるため、svnからエクスポートすると、リポジトリで見つかったファイルのみが上書きされ、残りはそのまま残ります(基本的にはマージ)。

ありがとう!

4

1 に答える 1

0

エクスポートの代わりに、wwwディレクトリへのチェックアウトを作成できます。apacheの.svnフォルダーへのアクセスを拒否できます

次に、SVNサーバーにコミットがある場合は、作業コピーを更新し、ローカルの競合する変更を破棄するように設定します。

svn update --accept theirs-full /www/htdocs/example.com/www 

svn revert最初に実行して、すべてのローカル変更を破棄することもできます。svn checkout --forceまた動作するはずです。

于 2012-12-15T17:44:47.203 に答える