Warning
This software can permanently delete source and destination data. Read the Data-Loss Warning and Disclaimer before use.
EasyVersionBackup is a lightweight Windows tool for creating versioned backups of folders. Back up save-game folders, office-document folders, Visual C# project folders, and other local directories.
It supports manual and automatic backups, multiple source β target configurations, ZIP backups, per-entry exclusions, skipped-file reporting, system tray integration, and a clean WinForms interface.
EasyVersionBackup is free to use. If this tool saves you time, you can support development here:
Important
If Windows SmartScreen blocks the app, right-click the EXE β Properties β check Unblock β Apply β OK, then start it again.
Main-Window
Backup Pair Settings
Source Cleanup
- Create structured backups with version numbers
- Supports manual input, auto-increment, and timestamp-based versions
- Remembers manually adjusted versions per source β target pair
- Detects existing versions and suggests the next logical version
- Updated versions are stored only after a successful backup
- Canceling a backup does not advance or persist the version number
- Configure multiple source β target pairs
- Enable or disable each entry individually
- Edit source and target paths directly in the main window
- Browse folders directly from the main table
- Configure versioning, retention, source cleanup, timers, and error handling per backup pair
- Define excluded files or folders per backup entry
- Edit exclusions directly from the main window or Settings
- Add and remove exclusions through a table-based editor
- Confirmation prompt before removing existing exclusion entries
- Supports source-relative paths and glob-style patterns
Examples:
bin
bin\
.sav
*.sav
Saved\SaveGames\*.sav
**\SaveGames\*.sav
Saved\**\*.sav
Pattern behavior:
.savand*.savmatch.savfiles*matches characters within one path level**matches any number of folder levels- A trailing
\restricts the rule to folders - Matching is case-insensitive
- Wildcard-only exclusions are rejected for safety
- Configure retention separately for every backup pair
- Keep the newest number of backups
- Keep backups for a configured number of days
- Combine retention rules using
ANDorOR - Protect tagged backups such as
FinalorOK - Preview affected backups before permanent deletion
- Choose between:
- Canceling the complete backup
- Continuing without deleting old backups
- Creating the backup and deleting confirmed retention candidates
- Destructive actions are clearly highlighted
-
Remove old source files after a successful backup
-
Configure cleanup rules separately for every backup pair
-
Supports multiple file rules, for example:
.sav Saved\SaveGames.sav Saved\SaveGames*.sav
-
Keep only the newest configured number of files
-
Or delete files modified before a selected date
-
Cleanup is restricted to explicitly configured file types and source-relative folders
-
Directories are never deleted
-
Files outside the configured rules remain untouched
-
Cleanup does not run when the backup fails or is canceled
- Define intervals like
30s,5m, or1h - Configure a global timer or a custom timer per backup pair
- Live countdown visible:
- In the main UI
- In the window title
- In the system tray tooltip
- Backup progress is displayed directly inside the main table
- Source-related operations fill the source-directory cell
- Target-related operations fill the target-directory cell
- The timer column temporarily shows the current percentage
- Indeterminate phases use a subtle moving progress fill
- The normal timer value is restored after completion
- Multiple backup pairs can show progress independently
- No additional progress window or focus change is required
- File and ZIP creation runs outside the UI thread
- Works while you use other applications
- Automatic backups remain silent unless user interaction is required
- Destination-conflict and retention confirmations can still require interaction
- Optional minimize-to-system-tray behavior
- Per-entry status indicator:
- π’ OK
- π‘ Warning
- π΄ Error
- Hover for quick details:
- Last backup time
- Error messages
- Skipped-file summary
- Click the info icon to open a copyable and scrollable details dialog
- Skipped files are listed individually when available
- Skipped files do not automatically mark a successful backup as failed
- Retention is indicated by a red
Rmarker - Source cleanup is indicated by a cyan
Cmarker - Both markers are displayed when both features are active
- Optional compression into
.ziparchives - Uses the same versioning logic as folder-based backups
- Temporary ZIP files are finalized only after successful creation
- No additional metadata sidecar files are created
- Option to ignore locked or in-use files
- Backup can continue without interruption
- Skipped files are reported per backup entry
- Skipped-file summaries distinguish between files and folders
- Failed or canceled backups do not trigger source cleanup
- Useful for projects with temporary build files, IDE locks, or active services
-
Minimize to tray
-
Tray tooltip shows the next scheduled backup:
Next backup in 2 minutes (19:52)
-
Manual and automatic backups can show tray notifications
-
Canceled backups are reported as canceled instead of completed
- Clean, compact main window
- Toolbar with quick actions:
- Exit
- Add path
- Remove path
- Settings
- About
- Backup
- Modern themed dialogs and scrollbars
- Clear visual distinction between normal and destructive actions
- Main window initially shows only a small number of rows
- Window remains resizable
- Resize indicator included
- Tooltips and contextual help added for important controls
- Configure one or more source β target paths
- Optionally define exclusions per backup pair
- Choose a versioning method
- Optionally configure:
- Retention
- Source cleanup
- Custom backup timer
- Error handling
- Click Backup or let the configured timer start it automatically
- The app will:
- Validate the source and target paths
- Create a versioned directory or ZIP archive
- Report progress directly in the backup-pair row
- Skip problematic files if configured
- Apply source cleanup only after a successful backup
- Apply retention only after user confirmation
- Store the final backup status per entry
- Persist the selected version only after success
Flexible input:
30sβ 30 seconds5mβ 5 minutes1hβ 1 hour15β 15 minutes by default
Starting version or pattern, for example:
nonev1.01.0yyyy-MM-ddyyyyMMddyyyy-MM-dd-HH-mmyyyyMMddHHmm
- Automatically increases compatible version numbers
- Updated versions are saved only after a successful backup
- Keep the latest configured number of backups
- Keep backups for a configured number of days
- Combine enabled rules with
ANDorOR - Exclude tagged backups from deletion
- Delete only explicitly configured file types
- Restrict cleanup to specific source-relative folders
- Keep the newest files or delete files older than a selected date
- Keeps the app running quietly in the background
- Skips locked or problematic files instead of stopping the backup
- Enable to create one
.ziparchive per backup - Disable to create a versioned backup directory
- Exclude folders or files from individual backup entries
- Supports simple names, file extensions, relative paths,
*, and**
The published application targets Windows x64 and requires the .NET 8 Desktop Runtime because the project is framework-dependent (SelfContained=false).
Application settings are stored in:
<application directory>\Settings\EasyVersionBackup.settings.json
The application no longer creates .evbmeta sidecar files beside ZIP backups.
- Backup Visual Studio projects
- Create safe snapshots before refactoring
- Preserve game saves while automatically removing older save files
- Keep only a defined number of recent backups
- Protect release backups using retention tags
- Save versions before deployments or releases
- Run automatic backups while working