7

私は、あらゆる種類のツールを使用してファイルを編集する開発者と一緒に、Windows のみの作業環境で作業しています。.git私たちはコードのバージョン管理にアトラシアン スタックを使用しています。私はそれのほとんどすべてが好きです。

私は最近、git が行末をどのように、なぜ解釈するのか、そして何を解釈するのかについて頭を悩ませるための長く厳しい戦いを終えたところcore.autocrlfです。使用することにしましたがcore.autocrlf true、すべてがほぼ順調です。

のこの動作を変更する方法を知りたいですgit status:

  • CRLF行末のあるファイルがあります。
  • 行末を次のように変更しますLF

    $ git status
    On branch somebranch
    Changes not staged for commit:
        (use "git add <file>..." to update what will be committed)
        (use "git checkout -- <file>..." to discard changes in working directory)
    
    modified:   Src/the_file_i_changed_to_LF.js
    
  • しかしその後...

    $ git commit -a
    warning: LF will be replaced by CRLF in Src/the_file_i_changed_to_LF.js.
    The file will have its original line endings in your working directory.
    On branch somebranch
    nothing to commit, working directory clean
    

これに:

  • CRLF行末のあるファイルがあります。
  • 行末を次のように変更しますLF

    $ git status
    On branch somebranch
    nothing to commit, working directory clean
    
  • とにかく何もコミットされないので、これは理にかなっています。

これは可能ですか?

重複の可能性は、私が探している答えを保持していないと思います。私は自分の設定が何をするのかを知っている (と思う) ことを強調しcore.autocrlf trueたいと思います。私が興味を持っているのは、git statusとにかくコミットされない変更を検出しないか、これが不可能な理由を理解することです。

4

1 に答える 1