251

ファイルに対してgit-diffを実行していますが、変更は長い行の最後にあります。

カーソルキーを使って右に移動すると、色分けが失われ、さらに悪いことに行が整列せず、変更を追跡するのが難しくなります.

その問題を防ぐ方法、または単に行を折り返す方法はありますか?

私はmingw32経由でGit 1.5.5を実行しています。

4

15 に答える 15

236

または、デフォルトのポケットベルとしてlessを使用する場合は-S、diffを表示しながら入力するだけで、lessでの折り返しを再度有効にできます。

于 2010-06-24T06:58:19.240 に答える
129

の出力の表示は、git diff使用しているページャーによって処理されます。

通常、Linux ではlessが使用されます。

GIT_PAGER環境変数を設定することで、別のページャーを使用するように git に指示できます。ページングを気にしない場合 (たとえば、端末でスクロール バックが許可されている場合) は、明示的GIT_PAGERに空に設定して、ページャーを使用してページングを停止してみてください。Linux では:

$ GIT_PAGER='' git diff

ページャーがないと、行が折り返されます。

--no-color端末が色付きの出力をサポートしていない場合は、引数を使用するか、git 構成ファイルの color セクションにエントリを配置して、これをオフにすることもできます。

$ GIT_PAGER='' git diff --no-color
于 2008-09-30T10:43:23.783 に答える
119

git configページャーをラップするようにセットアップするために使用することもできます。

$ git config core.pager 'less -r' 

現在のプロジェクトのページャー設定を設定します。

$ git config --global core.pager 'less -r' 

すべてのプロジェクトに対してグローバルにページャーを設定します

于 2010-09-09T04:46:21.267 に答える
30

ポケットベルとしての使用を減らし、行の折り返しを永続的にするには、単に長行を折りたたむオプションを有効にします。

git config --global core.pager 'less -+S'

このようにして、使用量を減らしながら入力する必要はありません。

乾杯

于 2012-09-19T17:32:54.720 に答える
19

これをグーグルで検索しただけです。 GIT_PAGER='less -r'私のために働く

于 2009-05-21T02:32:40.993 に答える
19

Mac OSX: あまり実行されていないときの someone45 の「-S」を除いて、他の回答はどれも私にとってはうまくいきませんでした。word-wrap を永続化するには、次の手順が必要でした。

git config --global core.pager 'less -+$LESS -FRX'
于 2011-05-23T21:57:52.360 に答える
12

Git 1.5.3 以降 ( 2007 年 9 月)

--no-pagerオプションが利用可能になりました。

git --no-pager diff

git diff がページャーを使用しないようにするにはどうすればよいですか?

v2.1 以降、wrap がデフォルトです

Git v2.1 リリースノート

于 2014-05-13T23:10:55.533 に答える
6

これまで誰も指摘していませんでした。覚えるのは非常に簡単で、git config で追加の構成を行う必要はありません。

git diff --color | less -R
于 2016-06-30T14:18:30.940 に答える
5

8年後、 https://superuser.com/questions/777617/line-wrapping-less-in-os-x-specifically-for-use-with-git-diffから優れた答えを見つけました:

git config core.pager `fold -w 80 | less`

ここで、最初に git diff を fold にパイプし、次に less にパイプします。

于 2016-02-11T23:21:05.823 に答える
3

完全な解決策ではありませんが、gitkこのgit-gui情報を表示し、スクロールバーを表示できます。

于 2008-09-25T21:48:28.560 に答える
3

git diff の出力を more に単純にパイプすることができます:

git diff | more
于 2013-07-11T15:07:32.183 に答える
1

現在/デフォルトの構成をリストします。

  $ git config --global core.pager  
    less -FXRS -x2

次に、次のように -S を更新して除外します。

  $ git config --global core.pager 'less -FXR -x2'

-S: 画面幅よりも長い行を折りたたむのではなく、切り詰めます。

于 2016-02-01T23:58:54.340 に答える
-1

困ったときは、DiffMerge に頼ることがよくあります。インライン差分ハイライトを備えた優れた差分ツール。また、最新バージョンでは、水平モードを持つモードが追加されました。

ただし、それを使用するように git を構成することはできませんでした。そのため、最初に両方のバージョンのファイルを取得するためにいじる必要があります。

于 2008-09-26T11:59:33.293 に答える