チェックインされたファイルを検証するために dos2unix を呼び出すプリコミット フック スクリプトを SVN に実装するにはどうすればよいですか?
質問
このタイプのスクリプトを書いた経験のある人がいるかどうか、アドバイスをもらえるかどうかを考えていました。
これを変更したいのですが 脚本 チェックイン ファイルに EOL 形式の改行が含まれていないことを検証します。EOL 形式は、Windows では CR LF、Unix では LF です。ユーザーが Windows 形式でコードをチェックインするとき。Unix ではコンパイルできなくなりました。これがクライアント側で実行できることはわかっていますが、この検証はサーバー側で実行する必要があります。これを達成するには、次のことを行う必要があります。
1) チェックするファイルがバイナリではないことを確認します。svnlook でこれを行う方法がわかりません。ファイルの mime:type をチェックする必要がありますか?の 赤い本 これを明確に示していないか、私がそれを見ていないに違いありません。
2) を実行したいのですが、 dos2unix コマンドを使用して、ファイルが正しい EOL 形式であることを検証します。dos2unix コマンドの出力を元のファイルと比較します。両者に相違がある場合は、クライアントにエラー メッセージを表示し、チェックインをキャンセルします。
このアプローチについてのコメント/フィードバックをお願いします。
解決
この場合、次を使用することでコミットフックスクリプトを回避できると思います。 svn:eol-style
SVNBook で説明されているプロパティ:
このようにして、SVN は行末を自動的に考慮することができます。
幸運を!
所属していません StackOverflow