The source code of the extension CompareFolders
MIT License
The extension allows you to compare folders, show the diffs in a list and present diff in a splitted view side by side.
The extension uses the great dir-compare
package made by Liviu Grigorescu. If you like this extension, please give a star to dir-compare
!
Currently seems like there might be issues [#81, #83] with comparing local and remote folders over ssh. Please take this under consideration.
There are several ways to choose folders to compare:
Compare a folder against workspace
choose a folder to compare against the workspace's folder (when workspace is not empty)Choose 2 folders and compare
- opens OS folder chooser twiceClick to select a folder
see 1st itemClick to select folders
see 2nd itemCompare selected folders
see 2nd itemPick from recent compares
chose one of the pairs you compared in the past.Clear recent compares
)Pick from History
: Choose one of the pairs you compared in the past.Swap Sides
: Swap the sides of the compared folders.Refresh
: Re-compare the folders if there are changes in the compared folders' files.View as List / View as Tree
: Toggle between list and tree view modes.Dismiss
: Remove the file from the list of compared items.Take My File / Take Compared File
: Replace the file with the one from the other side.Copy to My Folder / Copy to Compared Folder
: Copy the file to the other side.Delete
: Permanently delete the file from the file system.excludeFilter
- glob stringincludeFilter
- glob stringExample
"compareFolders.excludeFilter": [
"**/node_modules",
"**/.svn",
"**/.git"
]
compareContent
- boolean - Compares files by contentdiffViewTitle
- One of the options: "name only", "compared path", "full path"ignoreFileNameCase
- boolean - Compare files with the same name but different casediffLayout
- One of the options: "local <> compared" or "compared <> local"showIdentical
- boolean - Whether or not show the identical files paneluseDiffMerge
- boolean - Whether or not using Diff & Merge
extension as the Diff viewer. In order to use this option, you should install the extensionfolderLeft
+ folderRight
- strings - paths of 2 folders, compare them on the extension load.ignoreExtension
- Set groups of extensions so while comparing, pairs of files considered the same file if both of the files extension are in the same group. Note: each extension can show only once it this list"compareFolders.ignoreExtension": [
["php", "cs"]
]
ignoreLineEnding
- boolean - ignore crlf/lf line ending differencesignoreWhiteSpaces
- boolean - ignore white spaces at the beginning and ending of a line (similar to diff -b
)ignoreAllWhiteSpaces
- boolean - ignore all white space differences (similar to diff -w
)ignoreEmptyLines
- boolean - ignore differences caused by empty lines (similar to diff -B
)respectGitIgnore
- boolean - include / exclude files based on .gitignore - this option works together with includeFilter
and excludeFilter
options. ⚠️ The extension supports the main basic gitignore rules. For instance, it supports negation (!
), but it doesn't support .gitignore files in subfolders. If there is an important use case that is not supported, please open an issue.defaultDiffViewMode
- One of the options: "tree" or "list". The default view mode when vscode is opened. Later it can be toggled by the "View as list / View as tree" buttonBy calling the following command from the terminal / command line, the extension will be calling on vscode load and show the differences view
COMPARE_FOLDERS=DIFF code path/to/folder1 path/to/folder2
Show your love
Please create an issue
You can find it here
Activity bar's icon (and more) by Stockio.com Null icon made from Icon Fonts is licensed by CC BY 3.0 External link icon made by Dave Gandy from www.flaticon.com
You can find the series of the posts about how this extension developed step by step in medium.com.