Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>Multi Projects DiffNew to Visual Studio Code? Get it now.
Multi Projects Diff

Multi Projects Diff

Francesco Anzalone

|
125 installs
| (1) | Free
Compare a file against multiple projects/folders within defined groups. Easily view differences, copy content, and navigate between projects.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info
Logo

Multi Projects Diff

Compare a file across multiple projects

Parallelized diffs, one-click actions, zero telemetry.

VS Marketplace version VS Marketplace installs VS Marketplace rating VS Marketplace downloads Open VSX version Open VSX downloads

Available on VS Code Marketplace and Open VSX.

Compare the currently open file in the editor against corresponding files in other project paths (within the same configured group).

Multi Projects Diff - quick demo
Click for HD video. GIF auto-loops.

At a Glance

  • Diff a file across multiple repositories instantly.
  • Parallelized via Node worker_threads for a responsive UI.
  • One-click actions: open diff, push content, create missing files.
  • Clear indicators for added/removed lines and missing files.

Features

  1. Project Diff View: A dedicated view in the Activity Bar lists all projects within the matched group for the current file, enabling quick comparison.

  2. Multicore Diffing: The diff tasks run in parallel via Node worker_threads, keeping VS Code responsive and cutting total diff time by 3-4x on medium/large files across multiple projects.

  3. Flexible Reference File Selection:

    • Set as Reference: Use the inline "Set as Reference" action (pin icon) on any file in the list to make it the reference for comparison.
    • Use Active File as Reference: Use the view toolbar action "Use Active File as Reference" (target icon) to set the currently active editor file as the reference.
  4. Clear Diff Indicators: Project items are clearly labeled with the project name and the number of added/removed lines ([Project Name] ([Added Lines]/[Removed Lines])). A "File Missing" indicator is shown if the file doesn't exist in a particular project.

  5. One-Click Actions:

    • Open Split-Screen Diff: Click on a project item to open a split-screen diff comparing the reference file with the selected project's file.
    • Push Content from Reference: Copy the content of the reference file to the selected project's file.
    • Create and Push File: Create a missing file in a selected project and copy the content from the reference file.
    • Open File: Opens the file from a selected project in a new editor tab.
    • Open Workspace: Opens the workspace folder of a selected project in a new VS Code window.
    • Open Terminal: Opens a terminal in the selected project's folder.
  6. Group Selection: If the current file doesn't belong to any defined group, or if you want to compare against a different group, use the "Pick Group" button to choose a specific group for comparison (only available if the file doesn't belong to any group).

  7. Watch Mode: Toggle Watch (eye icon) in the view toolbar to automatically use the currently active editor file as the reference and refresh the comparison whenever you switch files. Disable it with the eye-closed icon.

Quick Start

  1. Install the extension.
  2. Configure "multiProjectsDiff.diffGroups" in settings.json with your project paths.
  3. Open a file, then open the "MULTI PROJECTS DIFF" view to compare across projects.

Performance

Parallel diffing improves throughput by approximately 3-4x on medium/large files across multiple projects while keeping the UI responsive.

Security & Privacy

  • Operates on local files only; no network calls.
  • No telemetry is collected by this extension.

How to Use

  1. Open a file you want to use for comparison. This becomes the initial reference file the first time you run the diff.
  2. Open the "MULTI PROJECTS DIFF" view from the Activity Bar. The view will show the comparison of your active file against other projects in the same group.
  3. Change the Reference File (Optional):
    • Click Set as Reference (pin icon) next to any file in the list to set it as the new reference for all comparisons.
    • Click Use Active File as Reference (target icon) in the toolbar to set the file currently active in your editor as the reference.
    • Toggle Watch (eye icon) in the toolbar to automatically set the active editor file as the reference whenever you switch editors. Turn it off with the eye-closed icon.
  4. Refresh Comparison: Click Refresh (refresh icon) at the top of the view to re-run the diff against the current reference file. Refresh does not change the reference file.
  5. View Diffs: Click on any project item in the list to open a split-screen diff.

If the file belongs to a configured group, the view automatically displays the diff results against the other projects in that group.

If the file doesn't belong to any group, or if you want to compare against a specific group, use Pick Group to select a group.

Configuration

Configure the extension by defining "diff groups" in your VS Code settings (settings.json). Each group contains a name, an optional ignoreWhiteSpace setting, and an array of "workspaces" (projects).

// Config example
{
  "multiProjectsDiff.diffGroups": [
    {
      "name": "My Project Group",
      "ignoreWhiteSpace": true,
      "workspaces": [
        {
          "name": "Project Alpha",
          "path": "/path/to/project/alpha"
        },
        {
          "name": "Project Beta",
          "path": "/path/to/project/beta"
        },
        {
          "name": "Project Gamma",
          "path": "/path/to/project/gamma"
        },
        {
          "name": "Project Delta",
          "path": "/path/to/project/delta"
        }
      ]
    },
    {
      "name": "Another Group",
      "workspaces": [
        {
          "name": "Project Epsilon",
          "path": "/path/to/project/epsilon"
        }
      ]
    }
  ]
}

Contributing

Contributions are welcome! Please submit pull requests or bug reports.

License

This extension is licensed under the MIT License.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft