0

指定されたファイル(パス)がリポジトリにコミットするのを防ぐことは可能ですか?

たとえば、somepath/database_config.phpコミットする必要はありません。

プロパティを使おうとしましsvn:ignoreたが、リポジトリではなく、作業コピーでしか動作しないようです。

この機能についてsvnbook.red-bean.comを読んだことがありますが、私の脳は、物事が思ったように機能しない理由を本当に理解できないと感じています。

4

2 に答える 2

3

参考:svn:ignore無視するファイルがリポジトリにない場合にのみ機能します。

構成ファイルをリポジトリに追加するときに行うことは、リポジトリに保持されるテンプレート ファイルを作成し、各開発者に固有の構成ファイルを無視することです。したがって、コードをチェックアウトする人は、.template拡張子を付けずにテンプレートの名前を変更し、そのローカル構成をテンプレートに配置する必要があります。

そうすれば、すべての開発者が全員に影響を与えることなく、異なる構成を持つことができます。

例: テンプレート ファイル: database_config.php.template

$config = array(
    'host'     => 'XXXX', 
    'db'       => 'XXXX', 
    'user'     => 'XXXX', 
    'password' => 'XXXX', 
);

構成ファイル: database_config.php

$config = array(
    'host'     => 'XXXX', 
    'db'       => 'XXXX', 
    'user'     => 'XXXX', 
    'password' => 'XXXX', 
);

これらの svn コマンドを作成して、リポジトリに追加します。

// Add the template
svn add database_config.php.template
// Ignore the config file used by the system (Should not be in repository)
svn propset svn:ignore "config.php" .
svn commit
于 2011-01-26T19:40:06.780 に答える
1

このコマンドを使用しsvn lockて、リポジトリ内の特定のファイルまたはパスが変更されないようにすることができます。したがって、特定のファイルがコミットされないようにするには、空のファイルをコミットしてから(または、「このファイルをコミットしないでください。構成はローカルマシンでのみ行う必要があります」を含む)、ファイルをローカルに変更して必要なコンテンツは何でも。

ファイルをロックした後、他の人がロックやファイル自体を変更できないように制限できますが、その時点で、開発者が明らかにロックすることを目的としたファイルをいじっている場合は、それらを叩き始めます。そのリポジトリへのすべての書き込みアクセスを削除することを検討してください。

詳細については、マニュアルエントリおよび詳細なドキュメントを参照してください。

于 2011-01-26T19:15:04.640 に答える