22

Linux スタイルの行末 (LF 文字のみ) を持つファイルをチェックアウトしています。Windows で TortoiseSVN を使用してファイルをチェックアウトすると、行末が Windows スタイル (CR+LF) に変換されます。Subversion 構成ファイルに行を追加して、LF を強制的に使用するようにしました。はい、enable-auto-props = yes を設定しました。これは機能しません。機能したとしても、TSVN が単にファイルに触れないようにしたいので、私が望んでいるものとはまったく異なります。そのままコピーするだけです。

4

4 に答える 4

25

他の人が指摘したように、svn:eol-styleプロパティを設定する必要があります。このプロパティには、次の 3 つの値があります。

  • LF: チェックアウトおよびコミット時に、行末を Unix の行末に自動的に設定します。
  • CRLF: チェックアウトおよびコミット時に、行末を自動的に Windows の行末に設定します。
  • native: これは Unix 行末 ( ) へのコミット時に行末を保存しますが、クライアントに基づいてまたはのLFいずれかで行末をチェックアウトします。LFCRLF

auto-props$HOME/.subversion/config ファイルで設定を行うと、このプロパティをすべての新しいファイルに自動的にアタッチできます。ただし、これは各ユーザーが Subversion クライアントで設定する必要があるものです。このプロパティの設定を強制するには、指定したファイルに指定したプロパティが正しい値に設定されていない場合にコミットを拒否するpre-commit フックを使用できます。

これは問題を修正しないため、大雑把な棍棒ですが、コミットが 1 ~ 2 回失敗すると、開発者は必要なプロパティを自動的に追加するように auto-props をすばやく設定します。


Windows 上の TortoiseSVN の場合、ユーザー名/AppData (隠しフォルダー) の下にある構成ファイルを見つけます。例えば

%appdata%\roaming\subversion\config

これらの行を追加して (おそらく既に存在しますが、コメントアウトされています)、ログアウト/ログインします。

enable-auto-props = yes
# Add these for each text file type that you use:
*.txt = svn:eol-style=native
*.cs = svn:eol-style=native
*.xml = svn:eol-style=native

(例は XML を使用した C# の場合です。使用するテキスト ファイルに置き換えてください。)

于 2012-07-22T14:19:50.807 に答える
3

auto-props構成設定は、既存のファイルではなく、新しいファイルに対してのみ機能します。それらについてはsvn:eol-style、各ファイルのプロパティを設定する必要があります。

于 2012-07-22T11:03:25.640 に答える
3

svn:eol-styleプロパティを設定する必要があります。

http://tortoisesvn.net/docs/nightly/TortoiseSVN_en/tsvn-dug-propertypage.html

http://svnbook.red-bean.com/en/1.7/svn.advanced.props.file-portability.html#svn.advanced.props.special.eol-style

于 2012-07-21T09:36:12.250 に答える
1

Tortoise SVN バージョン 1.12.0、ビルド 28568、2019/04/16 以降、AS-IS EOL プロパティをフォルダー全体に割り当てることができます。

ワークスペースを選択: 右クリック: TortoiseSVN ->: プロパティ

新規を選択: EOL

そのままを選択 (特定の EOL なし)

于 2019-07-02T14:55:41.727 に答える