Visual Studio Code - есть ли функция сравнения, подобная этому плагину для Notepad ++?

264

Есть ли функция сравнения, такая как плагин для Notepad ++?

Кай Ноак
источник
Да, есть, но он интегрирован с инструментами контроля версий, вы не можете попросить его сравнить два произвольных файла, но вы можете попросить контроль версий сравнить две ревизии одного и того же файла или вашего текущего файла в рабочем состоянии. папка с последней проверенной / подтвержденной ревизией.
Лассе В. Карлсен
5
@lasse vscode теперь может сравнивать два произвольных файла. Смотрите мой ответ stackoverflow.com/a/45091703/1081043
wisbucky

Ответы:

101

Вы можете сравнивать файлы из проводника либо из раздела рабочих файлов, либо из раздела папок. Вы также можете запустить глобальное действие сравнения из командной палитры.

Бенджамин Пасеро
источник
3
Да, я только что заметил, что есть возможность выбора файлов для сравнения, но только в открытой папке.
382

щелкните правой кнопкой мыши на первом файле и выберите

введите описание изображения здесь

затем щелкните правой кнопкой мыши на втором файле и выберите

введите описание изображения здесь

Screencast:

как сравнить файлы в vscode

Rakka Rage
источник
его достаточно хорошо, он имеет эту опцию для файлов в открытой папке, по крайней мере.
4
как сравнить два несохраненных вновь созданных файла?
ca9163d9
3
@ dc7a9163d9 таким же образом, щелкните правой кнопкой мыши и выберите для сравнения.
Амр Эдауи
3
@AmrElAdawy Я имел в виду сравнение двух буферов (например, Untitled-1 и Untitled-2, физический файл отсутствует)
ca9163d9
5
@ dc7a9163d9, да, это также так же, как если бы две безымянные имена были сохранены. Поток те же шаги. Я попробовал это, и это сработало.
Амр Эдауи
108

У меня Visual Studio Code версии 1.27.2 и я могу сделать это:

Сравните два файла

  1. Перетащите два файла в код Visual Studio введите описание изображения здесь
  2. Выделите оба файла и выберите « Выбрать для сравнения» в контекстном меню. введите описание изображения здесь
  3. Тогда вы видите разницу введите описание изображения здесь
  4. С помощью Alt+ F5 вы можете перейти к следующему различию введите описание изображения здесь

Сравните два документа или вкладки в памяти

Иногда у вас нет двух файлов, но вы хотите скопировать текст откуда-то и выполнить быструю разборку без необходимости сначала сохранять содержимое в файлы. Тогда вы можете сделать это:

  1. Откройте две вкладки, нажав Ctrl+ Nдважды: введите описание изображения здесь
  2. Вставьте ваш первый образец текста из буфера обмена на первую вкладку, а второй образец текста из буфера обмена на вторую вкладку
  3. Выберите первый документ Untitled-1 с помощью Select for Compare : введите описание изображения здесь
  4. Выберите второй документ Untitled-2 с « Сравнить с выбранным» : введите описание изображения здесь
  5. Тогда вы видите разницу: введите описание изображения здесь
Lernkurve
источник
Спасибо, сравнить с темой по умолчанию Белая тема лучше, чем темная.
Шайют
Спасибо, это было очень полезно!
user752746
50

Вот мой любимый способ, который я считаю немного менее утомительным, чем шаги «Выбрать для сравнения, затем сравнить с ...».

  • Откройте файл левой стороны (не редактируется)
  • F1 Сравнить активный файл с ...
  • Выберите файл с правой стороны (редактируемый) - вы можете выбрать недавний файл из выпадающего списка или щелкнуть любой файл на панели проводника.

Это работает с любыми произвольными файлами, даже с теми, которых нет в каталоге проекта. Вы даже можете просто создать 2 новых файла без названия и скопировать / вставить текст туда же.

wisbucky
источник
1
Знаете ли вы, существует ли способ сделать оба файла редактируемыми в окне сравнения?
Себастьян Верк
Не так далеко, как я знаю. Странно, что вы не можете редактировать оба окна.
Висбуки
Это хорошо. Знаете ли вы автоматический способ сдвинуть различия слева направо? Кроме ручного копирования / вставки?
user1055568
Как выйти сравнить вариант @wisbucky
Gunasekar
17

В вашем терминале введите:

code --diff file1.txt file2.txt

В VS Code откроется вкладка, показывающая различия в двух файлах.

Эрика Дсоуза
источник
8

Существует плагин, называемый Partial Diff, который помогает сравнивать выделенные тексты в файле, в разных файлах или в буфере обмена.

SANN3
источник
Я люблю Partial Diff. Выделите какой-нибудь текст, установите его как левый, выберите еще немного, установите его как правый. Вуаля.
Джереми Фостер
Да, я также обнаружил, что Partial Diff очень прост в использовании и очень полезен.
Ноби Фудзиока,
1

Вот ссылка на торговую площадку для расширения. Расширение «Сравнить» помогает сравнить два файла, которые вы можете выбрать из текущего проекта и другой директории на вашем компьютере или в буфере обмена.

Маргарет
источник
1

Щелкните правой кнопкой мыши на первом файле нажмите «Выбрать для сравнения».

Нажмите 2-й файл, нажмите «Сравнить с выбранным»

Али Карака
источник
1

Я нашел самый быстрый для меня поток, сначала связав сочетание клавиш Alt+kс «Сравнить активный файл с ...» ( #a ). (Аналогично ответу Висбуки, но в дальнейшем он улучшился и стал более пошаговым.)

Затем, чтобы сравнить два файла:

  1. Открыть или сфокусировать файл B (по умолчанию будет редактируемым в режиме сравнения). Например, путем перетаскивания из Проводника в центр кода VS.
  2. Открыть или сфокусировать файл A.
  3. Нажмите Alt+k, быстрое открытое меню будет показано с сосредоточенным файлом B.
  4. Нажмите Enter.

Результат: файл A слева и файл B справа. (Проверено на VS Code 1.27.1)

замечания

#a - для этого нажмите, Ctrl-k Ctrl-sчтобы отобразить сочетания клавиш, введите compareтекст в верхнем окне поиска и дважды щелкните столбец «Связывание клавиш» для «Сравнить активный файл с ...», Alt+kзатем нажмите, Enterчтобы назначить его.

Джонни Вонг
источник
0

Если вы хотите сравнить файл в вашем проекте / каталоге с внешним файлом (это, кстати, самый распространенный способ сравнения файлов), вы можете легко перетащить внешний файл на вкладку редактора и просто использовать команду: «Сравнить активный файл с ...» на одном из них, выбрав другой в появившемся окне выбора. Это кажется самым быстрым способом.

Яцек Дзюрдзиковски
источник