6

私のファイルはリモートのUbuntuLinuxサーバーにあります。ファイルをダウンロードしてWinSCPテキストエディタまたはNotepad++で編集すると、ファイルの行末スタイルがWindowsに変わります。したがって、ファイルをUbuntuに再保存すると、行がオフになり、SVNDiffはすべての行が変更されたと見なします。

参考までに、WinSCPでファイルをダブルクリックしてファイルを編集します。このプログラムは、エディタでファイルを起動します。保存するたびに、ファイルは自動的にLinuxサーバーにコピーされます。

行末スタイルの問題を防ぐにはどうすればよいですか?

4

7 に答える 7

3

このスレッドは役に立ちますか?より正確には、この部分:

このことから、WinSCPにテキストモード転送の使用を強制しているように見えます。これは、unix->dos変換を意味します。変換を回避するには、バイナリモードを強制するだけです。

于 2009-12-27T23:32:43.430 に答える
2

空白の問題が発生した理由はわかりませんでしたが、空白を無視する方法はわかりました。

次を使用できます。

svn diff -x'-uw --ignore-eol-style'

これは十分に機能しました。

于 2010-07-23T18:59:25.220 に答える
1

WinSCP で外部エディターの構成に入ることで、その問題を簡単かつ適切に修正できます。

の:View > Preferences > Editors

外部エディターを選択し、Edit ...

次に、チェックを外します。Force text transfer mode for files edited in external editor

于 2016-07-06T04:39:06.897 に答える
1

UNIX ライン形式を使用する必要があります。これを設定するには、[設定] > [環境設定] に移動し、[新しいドキュメント/既定のディレクトリ] タブを選択します。「新しいドキュメント」コントロールで「フォーマット」を見つけて、「Unix」を選択します。これにより、新しいドキュメントが正しい形式になることが保証されます。これをリモート Linux サーバーで使用しましたが、問題は見られませんでした。

通常、返されるファイルは一時的な名前で作成され、変更が書き込まれます。その後、元のファイルは削除され、新しいファイルの名前が変更されて代わりになります。これにより、返されたファイルが「新しい」ドキュメントになるため、この設定で正しい形式を指定する必要があります。

于 2011-12-07T20:15:08.803 に答える
0

WinSCP でテキスト/ASCII モード転送を使用すると、アップロード時に行末スタイルが Unix に変換されます。

したがって、問題は、ファイルが実際に最初に Windows の行末スタイルを持っていることにあると思います。ダウンロード時には何も変わりませんが、アップロード時には Unix スタイルに変換されます。

Unix スタイルを使用するようにファイルを修正するか (その場合)、バイナリ転送モードを使用します。

一般に WinSCP のバイナリ転送モードを構成する必要があるだけでなく (最近のバージョンの WinSCP ではデフォルトです)、環境設定オプションの外部エディターで編集されたファイルに対してテキスト転送モードを強制することも確認する必要があります。エディター (メモ帳++) はオフです:
https://winscp.net/eng/docs/ui_editor_preferences

このオプションは、WinSCP 内部エディターでは使用できないことに注意してください。これにより、ファイルは常に text/ascii モードで転送されます。

于 2014-06-13T07:43:51.860 に答える
0

私は Notepand2 と WinSCP を使用して Windows 上のファイルを編集し、サーバーは Linux 上にあります。

私の場合、問題は WinSCP 接続自体にありました。

接続する前に「編集」をクリックしてから「詳細」をクリックすると、行末文字のオプションがありました。それを変更すると、私の場合は問題が解決しました。

画面上のオプションは、すでに機能しているものです。以前は「LF」のみでした。

ここに画像の説明を入力

于 2015-07-16T13:29:41.917 に答える