質問

svn の下に Web サイトがあり、現在リポジトリにあるものをライブ Web サイトにパッチしたいと考えています (つまり、実稼働 Web サイトで svn update を効果的に呼び出します)、しかし実稼働 Web サイトのすべてのフォルダーに .svn ディレクトリを置きたくないのです。

バージョン情報を含む .svn フォルダーがバージョン管理下のファイルと同じディレクトリに存在しないように svn をセットアップする方法はありますか?

git では、この方法でワーク ツリーを作成および切り離し、プロジェクトに更新をプッシュできます (によると) http://toroid.org/ams/git-website-howto)、基本的にはsvnで同様のことができるようにしたいと考えています。

役に立ちましたか?

解決

svn export と同様に機能します checkout しかし、それがなければ .svn ディレクトリ。ただし、できません update これは SVN 作業コピーではないため、このような構造になります。

へのアクセスを禁止するように Web サーバーを設定することもできます。 .svn ディレクトリに移動し、checkout+update メソッドを実行するだけです。

他のヒント

「.svn」ディレクトリをコピーしないように rsync を設定するにはどうすればよいでしょうか?

rsync --exclude=.svn local_svn_copy webserver:site/

これを再実行して、Web サーバーのコピーを更新できます。

httpd.conf:

<Directory ~ "\.svn">
    Order allow,deny
    Deny from all
</Directory>

ラアルトさんが言ってたように svn export これは、繰り返し使用すると「作業コピー」を更新するための簡単ではありますが、あまり効率的ではない方法になります。

milen@dev:~$ svn export --non-interactive --force "<URL>" <directory>

を使用することもできます git-svn Web サイトの git ミラーを作成し、リンクした記事で説明されている方法を公開します。ただし、これが直接的な解決策ではないことは明らかです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top