ブランチで git diff を実行すると、行末に ^M という文字が入っているのがわかります
変更をコミットする前に、これらをUnixの行末に置き換えたいと思います
Ubuntu 14.04、git、sublime text 3を使っています
お世話になりました
EDIT:
他のユーティリティやコマンドを使わず、sublime text 3で行末を変更する方法を探しています
24 None 2017-06-09
これはプラグインを使わずに上部のメニューやステータスバーから行うことができます(ただし、この機能を有効にする必要があります)
上部のメニューから変更するには、[表示]をクリックします -> 行末 -> 希望する行末の種類を選択します
ステータスバーから有効にするには環境設定 -> 設定 をクリックして、右側の {}
括弧の間のどこかに "show_line_endings": true,
を追加します。最後に、変更を保存します
これにより、ステータスバーの右下に表示される小さなセクションが有効になります。それはあなたに現在のEOLエンコーディングを教えてくれ、ボックスをクリックして別のタイプを選択することで、あなたのためにファイルのEOL文字を変更します
もう一つの便利なオプションとして、ファイルエンコーディングがありますが、これは上記と同じ設定を行い、{}
マークの間に"show_encoding": true,
を追加することで、ステータスバーでも有効にすることができます
17 K.B. 2017-06-30
linux (パッケージ dos2unix) の dos2unix
コマンドを使うか、Sublime Text のメニュー項目 View / Line Endings で行末を変更することができます
15 Jan Čejka 2017-06-09
^M
は\r
(Control-M、またはキャリッジリターン)です
これは、ファイルをコミットしたユーザが Windows を使用していたためと思われますが、Windows では行末に \r\n
を使用しています。Linux では \n
のみを使用しているため、行末に ^M
が表示されています
のいずれかをしたいと思っているのではないでしょうか
- ファイルの行末が
\n
になるように(dos2unix
などのツールを使って)修正してコミットしてください。この場合、以下のようにしてもらえない限り、他のユーザーと喧嘩になるでしょう - git をインストールした両方の環境で、それぞれの環境で行末を正しく扱うように設定します。https://stackoverflow.com/questions/10418975/how-to-change-line-ending-settings のようにします
- Windowsの行末」でファイルを開くようにSublimeを設定します
8 Attie 2017-06-09
誰が^M改行を削除するには、追加のプラグインをインストールしたくないかもしれません
sublime textの設定で、
"trim_trailing_white_space_on_save": true,
を追加して保存時にスペースを自動削除します。(このステップは任意かもしれません)開いているファイルで、sublime textの右下隅をクリックします。
Windows
をUnix
に変更して保存します
- ^mがなくなってしまいました。お楽しみに
4 harrrrrrry 2018-10-10
開いているすべてのファイルの行末をUnix/Windows/Mac OS 9に変換するプラグインという崇高なテキストを見つけました
Installation
- Sublime を開いて、Preferences > Browse Packages に進みます。これでウィンドウが開きます
- この リポジトリ の内容を、前のステップで開いた Packages/ フォルダに、パッケージ名と同じ名前のフォルダにダウンロードするか、クローンしてください
/home/YOUR_USERNAME/.config/sublime-text-3/Packages
Usage
- sublimeに戻って、変換したいファイルをすべて開きます
- すべてのファイルが開いたら、CTRL + SHIFT + Pを押して検索し、「すべてのビューに行末を表示」を選択します。Unix “を選択してください
- 開いているファイルをすべて保存するには、CTRL + ALT + Sを押します
3 Achraf JEDAY 2017-06-09