40

「svnpropeditsvn:ignore」を実行すると。svnリポジトリのルートで、次のエラーが発生します:svn:一貫性のない行終了スタイル

このスクリプトを実行しようとしました:http://blog.eflow.org/archives/130 dos2unixを実行し、すべてのファイルにeol-styleを設定しますが、この問題は引き続き発生します。何が間違っている可能性がありますか?

4

20 に答える 20

42

私の場合、svn:eol-styleプロパティはファイルに設定されていました。また、「ファイルの一部の行はUNIXの行末(LF文字)で区切られ、他の行はDOSスタイルの行末(CR + LF文字)で区切られていました」。これがこの問題の別の詳細な議論です。Notepad++
"Edit"->"EOL Conversion"->"Windows format"で問題が解決しました。

于 2011-11-02T17:47:45.187 に答える
31

私の場合、私はWindowsで編集していました。修正するには:

  1. Notepad++でファイルを開く
  2. 行末をUnixに変換します([編集]メニュー->[EOL変換]->[Unix])
  3. 保存する
  4. 行末をWindowsに変換します([編集]メニュー->[EOL変換]->[Windows])
  5. 保存する

これはそれをしました。

于 2014-12-05T01:54:22.977 に答える
17

Subversionはファイルの内容について不平を言っているのではなく、svn:ignoreプロパティの内容について不平を言っています。svn:ignoreこれを修正する1つの方法は、でプロパティを削除してsvn propdelから再作成することです。

あなたがあなたの中にたくさんの行を持っているならもっと簡単かもしれない別の方法svn:ignore

  1. 次のような一時ファイルでsvn:ignoreの値をフェッチします。

    svn propget svn:ignore . > temp

  2. temp ファイルの行末を修正する
  3. 次のように、固定ファイルからsvn:ignoreの値を設定します。

    svn propset svn:ignore -F temp .

于 2009-05-28T13:00:03.753 に答える
8

ランニング

unix2dos [file]

cygwin経由でこれを修正してくれました。

于 2010-07-13T16:22:04.577 に答える
4

私の問題は、これをVisualStudio.NETで取得していたことでした。これを修正するために、ファイルのすべてのテキストをメモ帳にコピーし、メモ帳から「xxx.aspx」または適切なファイル名に保存しました。次に、Visual Studioで、変更されたファイルを再読み込みするように求められました。これは、行末を正規化するかどうかを尋ねるダイアログボックスです。問題が解決しました。

于 2010-01-27T03:54:48.047 に答える
3

1つまたは2つのファイルでのみ発生する場合は、ファイルを開き、コンテンツをコピーして新しいファイルに貼り付け(通常のテキストエディタを使用)、保存することもできます。その後、このファイルを追加できます(名前を変更するか、移動して正しい名前にします)。

于 2012-06-06T12:56:35.567 に答える
1

スクリプトは間違いなくすべてのテキストファイルに影響を与えましたか(dos2unixがインストールされていると仮定すると、そうでない場合はそれが理由になります...)?

私が考えることができる他のことは、すべてのファイルにmime-typeが正しく設定されていることを確認することです(チェックインされたテキストファイルとして何らかの形でマークされたバイナリファイルはありませんか?)。

とはいえ、マルチOS環境にいる場合、OS間でテキストファイルを共有および編集している場合は、上記のブログ投稿で説明されているように、svn:eol-styleをCRLFに設定することはお勧めできません。そのようにすると、Windowsでは問題ないように見えるファイルにUnixでは制御文字が散らばっているためです。EOLスタイルとして「ネイティブ」を使用することをお勧めします。

于 2009-05-27T18:58:04.250 に答える
1

このエラーが発生しましたが、最後のEnd-of-lie(不完全な最後の行)が欠落しているファイルになってしまいました。

VIでファイルを開いて保存することでこれを修正すると、問題が解決しました。

于 2009-12-09T13:40:34.000 に答える
1

viは悪い行を表示しなかったので、コメントセクションから行の終わりを削除し、それらを再読み込みして(ENDまで)ファイルを保存しました。その後はうまくいきました。

注:微調整する前に、revpropファイルをバックアップしてください。あなたがそれを芝刈りした場合、戻ることはありません

于 2010-03-19T20:04:28.410 に答える
0

プロペディットを実行しているときにそれを取得した場合、SVNがプロパティに使用しているテキストファイルの形式について不平を言っているように思われます。

どのOSを使用していますか?プロペディテーションに使用しているエディターはどれですか?それでもpropeditコマンドでエディターが起動する場合は、このエディターを使用して、そこにある行末を確認します(viはこのIIRCを実行します)。

于 2009-05-28T03:39:39.690 に答える
0

これは私を長い間悩ませ、SVNでマルチシステムチームを操作していました。私はこの便利なアプリを作成しました。このアプリは、テキストファイルを探すサブフォルダーを含むフォルダーをナビゲートし、すべてのUNIXEOLをDOSEOLに変換します。これはAIRアプリであり、WindowsとMacの両方で動作します。それが役に立てば幸い

http://www.pippoflash.com/index.php/2012/06/11/svn-error-inconsistent-line-ending-style-nightmare-solved-download-app/

フィリッポ

于 2012-06-12T00:00:45.660 に答える
0

mac osxの場合、ファイルに対してこのエラーが発生し、dos2mac、次にmac2unixを使用して変換する必要がありました。それを行うと、行末の不満の問題が修正されました。

于 2012-08-05T18:50:29.197 に答える
0

通常はすべての行を終了する\nのに対し、特定の行を区切るためにのみ追加されるようにいくつかのテキストファイルにいくつかの変更を加えた後、問題が発生しました。\r\nそのため、修正はNotepad++を使用して検索して。([^\r])\n に置き換えること$1\r\nでした。このようにして、行末文字はどこでも一貫していました。

于 2013-03-21T18:12:56.397 に答える
0

perl(1)を使用してWindowsをUNIXの行末に一貫して変換するには:

perl -p -i.bak -e 's#\r\n#\n#go' my-file.txt

UNIXからWindowsに戻すには:

perl -p -i.bak -e 's#\n#\r\n#go' my-file.txt
于 2013-04-08T07:07:11.590 に答える
0

Windowsマシンでantタスクを介してjavadocを実行したときにも同じ問題が発生しました。

<fixcrlf srcdir="${dir.javadoc}" eol="dos"/>javadocantタスクの下に追加して修正しました。

于 2014-04-04T06:17:50.603 に答える
0

以前はうまく機能していたアーカイブでも同じ問題が発生しました。notepad ++では、フォーマットをUTF-8に変換することを選択しました。これは私のために働いた。

于 2015-01-09T17:18:39.073 に答える
0

emacsでPHPファイルを試したときに同じエラーメッセージが表示されsvn propset eol-style:nativeたので、これがこの質問に答える人の助けになることを願っています。

私は次のようなものを持っていました:

str_replace('</li>^M<br>', '</li>', $text);

1文字はどこ^Mにありますか(キャリッジリターンのためのキャレットエスケープ)。

修正は、その行を同等のものに変更することでした。

str_replace("</li>\r<br>", '</li>', $text);

一重引用符ではなく二重引用符に注意してください。

于 2016-02-02T11:58:58.750 に答える
0

私の場合、ファイルのエンコーディングが「UCS-2LEBOM」であるためにエラーが発生しました。ANSIのファイルは問題ありませんでした。行末を確認しましたが、すべてのファイルで正しいものでした。(少なくとも私のSVNバージョンでは)ワイド文字ファイルが正しく認識されないことがあるようです。

最も簡単な解決策は、「svn:eol-style」プロパティを削除することです。

于 2016-09-01T12:09:19.980 に答える
0

NetBeansでは、「行末の表示と変更」プラグインを使用できます。

インストールしてNetBeansを再起動すると、ステータスバーの右側に行末のスタイルが表示されます。それをクリックして、ファイルを変換するエンディングを選択できます。

NetBeans行末プラグインの表示と変更

于 2017-09-15T13:18:36.683 に答える
0

上記で提案した「MariusMatioc」のように、簡単かつ迅速に修正できます1.Notepad++でファイルを開く2.編集メニュー->EOL変換->Unix3.保存4.編集メニュー->EOL変換->Windows5.保存

于 2019-01-10T23:06:57.837 に答える