1

この質問は私の他の質問と多少似てい ます。更新フックでファイルが CRLF から LF に変換されていることを確認してください。パフォーマンスに影響はありますか?

したがって、以下のアーキテクチャで探しているものは次のとおりです。1. 私の親リポジトリ (ベアおよびデータ) は UNIX マシン上にあります。2. UNIX マシンでリポジトリのクローンを作成できます。3. Samba を使用して Windows マシンでリポジトリを複製し、親リポジトリにアクセスできます。

次の場合、CRLF の問題に対処するにはどうすればよいですか

  1. ユーザーは UNIX でクローンを作成し、samba を使用してそれを Windows ドライブにマップします。修正は Windows で行われ、CR/LF 文字ペアが EOL として作成されます。ユーザーが Unix に戻り、コミットしてプッシュする場合。GIT はどのように処理しますか? または、いくつかのフックを配置する必要がありますか?

  2. 上記と同じですが、ファイル形式が 1 行あたり 8000 文字を超えています。これは、コミット時に CR が取り除かれた ASCII ファイルとして扱われますか?

  3. バリエーション 2 ですが、ASCII ヘッダーを持つバイナリ ファイルです。これにより、うっかり CR/LF が LF に変更されることはありませんか?

4

1 に答える 1

0

確認する2つの場所は、Git-configgit-attributesです

他の外部プログラム、特に企業のソース管理標準、および特定の形式を期待するツールに依存するローカル標準を決定する必要があります。

マニュアルページは、1回目と2回目の読み取りで少し混乱しているように感じます。「作業ディレクトリ」は「チェックアウトされた」ファイルを意味するなど、不可解なコーディングに注意する必要があります。

「デフォルト」は「正規化」です。これは、リポジトリにコミットされたファイルの末尾がLFになることを意味します。次に、適切な設定を使用して、ファイルを[常に] LF、[常に] CRLF、または[ローカル]プラットフォームに基づいて選択してチェックアウトできます。

長い行についてはわかりませんが、gitは非常に満足していると思います。

テキストヘッダーなどを含む特殊ファイルの場合、git属性ファイルを使用すると、ファイルタイプとパス固有のチェックインおよびチェックアウトプロトコル(マニュアルページの例)を定義できます。

PS私はMatlabでこれに固執しています*.m eol=LF;-)

于 2011-07-26T19:42:49.463 に答える