変更を読む

差分とプレビュー

差分を読む

切り替え 何をするか
統合 ↔ 分割 比べたいときは並べて、読みたいときは積み重ねて
単語単位 編集された行の中で変わったトークンだけをハイライト — 旧側は赤、新側は緑
空白を無視 インデントの直しを隠して、本当の変更を浮かび上がらせます
折り返し(左右分割のみ) 長い行を横スクロールせず、列の中で折り返します
連動(左右分割・折り返しオフ) 左右を縦・横ともに一緒にスクロールします — オフでは列ごとに独立して動きます
⌘F 差分の中を検索。次へ/前へで移動できます

折り返しは既定でオフです。1 行が 1 段に収まるので左右を行単位で見比べられ、各列は それぞれのスクロールバーで横に動きます。長い行を追いかけるより読みたいときにオンに してください。代わりに、3 段へ折り返された行は対応する行と正面に並ばなくなります。 どのトグルもファイルとセッションをまたいで状態を覚えます。

折り返しがオフのとき、左右は既定で連動してスクロールします。縦は行が向かい合った ままになるように、横は左の 90 桁目が右の 90 桁目の真上に来るように動きます。インデント されたブロックとされていないブロック、全行がずれた改名など、左右が食い違っているとき、 あるいは同じファイルの離れた 2 か所を見比べたいときは連動を解除して、それぞれの中身が ある位置に置いてください。

単語単位ハイライト付きの分割差分

すべての差分の上には セマンティック要約 があります — 行ごと ではなく、シンボルごとに何が変わったかを示します。

画像の差分

変更された画像はきちんと比較できます。並べて表示するか、スワイプハンドルを ドラッグして変更前後を行き来します。

画像の差分

変更ガターとミニマップ

ワークツリーのファイルのファイルビューは — ステージ済みかどうか、追跡中か新規かに関わらず — HEAD(ステージ済みファイルの場合はインデックス)から変更されたすべての行の横に色付きのバーを表示します。緑は追加、青は変更、置き換えなしで削除された箇所には小さな赤いくさび形が表示されます。バーをクリックするとファイルを離れずにその変更を確認できます — ポップアップには削除された行と追加された行が表示され、前へ/次へでファイル内のすべての変更を順に確認できます。

変更ガターとハンクのポップアップが開いた状態、右側にミニマップ

デフォルトで無効なミニマップは、ファイル全体を縮小した概観を右端に追加します — クリックまたはドラッグして移動できます。スクロールバーがファイルの形も見せてくれるとしたら、そんな役割です。どちらもマシンごとの設定で、設定 → 一般 → ファイルビューアにあります。

どちらも履歴は参照しません。Diff、Blame、または古いコミットに切り替えるとガターは消えます — それらのビューはすでに各変更を直接表示しているためです。

何でもプレビュー

プレビュー モードはソースを表示する代わりにファイルを描画します。Markdown、 Word(.docx)、Excel(.xlsx)、PDF、動画、音声、画像、そしてそれ以外は シンタックスハイライト付きのコードとして表示します。

Markdown のプレビュー

Apple のプロパティリスト

Info.plist や *.entitlements は XML ですが、XML を読みたい人はいません。 プレビューは代わりにキーと値のアウトラインを表示します — Xcode 自身の plist エディタが見せる形です。入れ子はそのまま、各値の型が隣に並びます。

キーと値のアウトラインとして表示された Info.plist

限界がふたつ。バイナリ の plist(bplist00)は識別して名前を出すだけで、 デコードはしません — ここで見たいなら plutil -convert xml1 を通してください。 もっとも、リポジトリの中のバイナリ plist はたいていコミットすべきでない ビルド生成物です。そして <data> の値は base64 ではなくバイト数として出ます。 blob は何も教えてくれませんし、共有中かもしれないペインに描かれた プロビジョニングプロファイルは、他の全員に多くを教えすぎます。

Xcode プロジェクト

project.pbxproj は、互いを ID で参照し合うオブジェクトの平坦な辞書ひとつです。 順に読んでもプロジェクトについてはほとんど何も分かりません。プレビューはその 参照をたどり、あなたが本当に見に来た 3 つを組み立て直します — ビルドフェーズを 伴う ターゲット、Xcode のナビゲータが描くとおりの グループツリー、 そして構成ごとの ビルド設定 です。

ターゲット・ファイルツリー・設定として表示された project.pbxproj

読むためのもので、編集はしません — ここから プロジェクトに書き込むものは何も ありません。2 つのブランチが同じものを編集したときについては 競合の解決 を見てください。

非常に大きなファイル

プレビューとファイル表示はファイル全体をメモリに読み込むため、サイズ上限 (プレビューは 32 MB、テキストは 16 MB)を超えるファイルは拒否し、代わりに ファイルの大きさを表示します。それでも読み込むを押すと、そのファイルに 限り上限を無視できます — 開けないものはなく、大きな読み込みがオプトインに なるだけです。数千行を超えるファイルや差分は引き続きすべて描画されますが、 画面外にスクロールされた行はレイアウトも描画もされなくなるため、巨大な lockfile の差分がノート PC のメモリを食い尽くすことはなくなります。

サイズ上限を超えたファイルと「それでも読み込む」

ファイルタブ

左サイドバーの ファイル タブは作業ツリーそのものを閲覧します。フォルダには 中身を集約したステータスバッジ(追加/変更/削除)が付きます。

プレビュー付きのファイルタブ

それぞれのフォルダの中で何が変わったかを合計したバッジ

関連項目: セマンティック差分 · ステージング

この翻訳を GitHub で改善