2011-01-08 21 views
3

私はLinux/Ubuntuマシンでプロジェクトを開発するためにVimとGITを使います。以前はWindowsを使用していました。つまり、行末はDOS形式でした。 Linuxに移行した後、私はいつも^ Mの混乱している/迷惑な文字をラインの最後に見ます。ここでは一部の人:Vim:Mac vs. Linux^M問題

How to convert the ^M linebreak to 'normal' linebreak in a file opened in vim?

は、私は検索/はDOS2UNIXのようなツールを交換したり、使用すべきであることが示唆されました。これらは良い提案ですが、バージョン管理されたプロジェクトでは、変更後のファイルに不要なコミットを追加する必要があり、それに時間を費やす価値のない大きな仕事です。したがって:

これにはVimに耐性を持たせるためにとにかくありますか?つまり、ファイルがDOSの行末にある場合、ファイルはこのように保持され、新しい改行の書式設定などが使用されます。

+2

..すべてのプラットフォームのネイティブタイプ。 gitにその機能があるかどうかはわかりませんが、最初にそれを調べることができます。おそらくそうです。 – Keith

+0

うーん...それは良い提案です。私はそれを試してみるべきです。私から1つの投票! – Rafid

+0

http://www.kernel.org/pub/software/scm/git/docs/gitattributes.html :-) – Keith

答えて

1

私が見つけた最高の答えは、コメントで@Keith答えです:

「あなたは、プロパティのsvnを設定することができますSubversionで:それが行末を変換するようになりますEOLスタイル=ネイティブの..ためのネイティブ型すべてのプラットフォームが自動的に起動しますが、gitにその機能が含まれているかどうかはわかりませんが、まずそれを調べてみてください。

そして、これらのリンクは有用なリンクであるかもしれないが設定する方法です:それが行末を変換するようになりますEOLスタイル= native`:あなたはプロパティ `のsvnを設定することができますSubversionで
http://help.github.com/dealing-with-lineendings/
http://git-scm.com/docs/gitattributes

1

はい、あなたはそれがDOS形式のファイルだと言ってvimの中で次のように設定することができます:私は私のファイル.vimrcに次の行を追加した

:set ff=unix 
+0

私はそれを試しても動作しません。それに加えて、新しいファイルを開くたびにファイルのフォーマットに従って自動的にこれをやりたいのですが、Linuxに戻すことを忘れた場合に起こる混乱はもちろんです。 – Rafid

2

:set ff=dos 

そして、同様に。

set fileformats=unix,mac,dos     

vimrcファイルが何であるかわからないのであれば、単にvimを設定する(そしてカスタマイズすることができる)ファイルです。デフォルトでは、ユーザのホームフォルダにある.vimrcというファイル(最初に点に気づく)を探します。見つからない場合は、/etc/vimrcからソースを入手します。

+0

これはジョエルの答えとどのように違うのですか? – Rafid

+0

Vimでファイルを読み込むたびに自動的に実行されます。ファイルごとに入力する必要はありません。さらに、3種類のキャリッジリターンを扱います(unix、mac、dos ... duh:P) – rahmu

+0

これは良い点です。残念ながら、それは私と一緒に働いていないようです。私はそれをして、私はまだ私のファイルに多くの^ Mが表示されます。 – Rafid

関連する問題