2010-12-06 9 views
3

私は知っている... SVN。しかし、ここでは取引があります。 SVNで働いているいくつかの開発者(そしてデザイナー)がいます。私たちはすべてのdb接続などで使用するconfigure.phpファイルを持っています。私たちはリポジトリへのコピーをコミットしないようにする必要があります。誰でも?ユーザーがSVNのファイルをコミットするのを防ぐ

+0

さて、あなたのプロダクションのコピーをdevリポジトリから直接取り出していますか? –

+4

'svn:ignore'に追加しますか?すべてのユーザーを拒否するリポジトリ内のそのパスのACLを設定しますか? – cdhowie

+0

@cdhowie:答えにあなたのコメントを書いてください!それは素晴らしい答えです。 – jgifford25

答えて

6

ファイルをロックすることができます。それは本当に誰かがそれを変更するのを止めるわけではありませんが(ロックを解除することができるので)、チェックインを止めるのに十分な余裕があります。

より良い解決策は、サーバー側でチェックインを拒否するプリコミットフックを書くことです。しかし、コマンドライン(またはguiツール)にたくさんのファイルをリストすることを意味するので、禁止されたファイル以外のすべてをチェックインするように強制するのは非常に面倒です。

ベストの解決策は、ファイルをチェックインしないことですが、必要なものと同じ名前だが異なる名前の「設定テンプレート」ファイルをチェックインすることです。そのファイルの中に、ファイルを正しいファイル名にコピーする必要性と、どのフィールドに適切な情報を記入する必要があるかを説明する必要があります。次に、実際の設定ファイルのsvn ignoreプロパティを追加します。やはり巧妙な人は、ファイルを無視してファイルをチェックインすることはできますが、最も勤勉なシステムブレーカ以外のすべてを停止するだけで十分です。

+0

正直なところ、悪意のある人があなたのリポジトリにアクセスすると、まず何か問題があります。私はこれが偶然のチェックインをやめるより多くのことだと思います。 –

+0

pre-lockスクリプトとpre-unlockフックスクリプトを設定した場合、Subversionは誰でも(許可されている人を除いて)誰かが盗み出したり、ロックを解除しないように設定できます。 – jgifford25

+1

+1テンプレートのことを行います。 –