BlastMerge

ktsu.dev · ktsu.BlastMerge

Cross-repository file synchronization through intelligent iterative merging

BlastMerge is a revolutionary file synchronization tool that uses intelligent iterative merging to unify multiple versions of files across repositories, directories, and codebases. Unlike traditional diff tools, BlastMerge progressively merges file versions by finding the most similar pairs and resolving conflicts interactively, ultimately synchronizing entire file ecosystems into a single, unified version. Key Features: - Smart Discovery: Automatically finds all versions of a file across directories/repositories - Hash-Based Grouping: Groups identical files and identifies unique versions - Similarity Analysis: Calculates similarity scores between all version pairs - Optimal Merge Order: Progressively merges the most similar versions first to minimize conflicts - Interactive Resolution: Visual TUI for resolving conflicts block-by-block - Cross-Repository Sync: Updates all file locations with the final merged result

winget install --id ktsu.BlastMerge --exact --source winget

Latest 1.0.21

Release Notes

v1.0.21 (patch) Changes since v1.0.20:

  • Refactor batch processing output for improved clarity (@matt-edmondson)
  • Enhance file merge logic and improve user messaging (@matt-edmondson)
  • Refactor error handling in ConsoleApplicationService and FileComparisonDisplayService for improved maintainability (@matt-edmondson)
  • Refactor to reduce nested types and improve code organization (@matt-edmondson)
  • Refactor project structure and enhance functionality (@matt-edmondson)
  • Enhance coverage collection in Invoke-DotNetTest function and update CI workflow (@matt-edmondson)
  • Refactor MenuNames and related display classes for improved organization and clarity (@matt-edmondson)
  • Fix unreachable code in whitespace condition and enhance batch processing (@matt-edmondson)
  • Fix hardcoded similarity value in merge status calculation (@matt-edmondson)
  • Enhance file comparison functionality and improve documentation (@matt-edmondson)
  • Fix SonarQube configuration in dotnet.yml by adding missing quotation marks for the host URL (@matt-edmondson)
  • Enhance welcome and goodbye screens with epic visuals and whitespace visualization (@matt-edmondson)
  • Enhance console application with TUI menu and improve file processing (@matt-edmondson)
  • Refactor code to reduce duplication and improve validation (@matt-edmondson)
  • Fix indentation issue in coverage report generation step of CI workflow (@matt-edmondson)
  • Add "Run Recent Batch" option to main menu and implement tracking functionality (@matt-edmondson)
  • Update coverage report path in CI workflow for improved file handling (@matt-edmondson)
  • Fix validation for empty batch names in AppDataBatchManager (@matt-edmondson)
  • Enhance welcome and goodbye screens with explosive ASCII art and improve whitespace visualization (@matt-edmondson)
  • Refactor ConsoleApplicationService and improve code quality (@matt-edmondson)
  • Refactor BlastMergeAppData.cs to remove conditional compilation for System.Reflection and ResetForTesting method (@matt-edmondson)
  • Enhance security measures for temporary file handling (@matt-edmondson)
  • Enhance winget manifest updater script with MSBuild integration and project agnosticism (@matt-edmondson)
  • Update BlastMergeAppData.cs to conditionally include System.Reflection directive in debug mode (@matt-edmondson)
  • Refactor side-by-side diff processing for improved accuracy and clarity (@matt-edmondson)
  • This sonar config is incompatible with the sonar CI integration (@matt-edmondson)
  • Enhance diff display with whitespace visualization and improve goodbye screen functionality (@matt-edmondson)
  • Add new tests for FileHasher and IterativeMergeOrchestrator, improve coverage (@matt-edmondson)
  • Fix nullable integer bug in LineDifference by adding null checks (@matt-edmondson)
  • Refactor ConsoleApplicationService to reduce cognitive complexity and improve readability (@matt-edmondson)
  • Refactor Invoke-DotNetTest function for improved command execution (@matt-edmondson)
  • Fix empty case clauses in switch statements to comply with SonarQube rule S3458 (@matt-edmondson)
  • Refactor file comparison handling and reduce cognitive complexity (@matt-edmondson)
  • Update project dependencies and enhance CI workflow (@matt-edmondson)
  • Fix bugs in CompareDirectoriesAsync method to improve file comparison efficiency (@matt-edmondson)
  • Update coverage settings and enhance CI workflow for SonarQube integration (@matt-edmondson)
  • Enhance console application structure and functionality (@matt-edmondson)
  • Refactor exception handling and reduce cognitive complexity in batch operations (@matt-edmondson)
  • Refactor BlockMerger and DiffPlexDiffer for improved readability and reduced cognitive complexity (@matt-edmondson)
  • Enhance test coverage configuration and execution in .NET CI workflow (@matt-edmondson)
  • Enhance iterative merge functionality and improve diff processing (@matt-edmondson)
  • Add SonarQube configuration and improve CI workflow for .NET project (@matt-edmondson)
  • Enhance iterative merge display and improve diff line processing (@matt-edmondson)
  • Enhance welcome and goodbye screens with explosive visuals and improve whitespace handling (@matt-edmondson)
  • Refactor coverage collection in .NET CI workflow to enhance reliability and diagnostics (@matt-edmondson)
  • Enhance SonarQube integration in GitHub Actions and update test coverage configuration (@matt-edmondson)
  • Refactor ConsoleApplicationService to enhance readability and reduce cognitive complexity (@matt-edmondson)
  • Enhance coverage output handling in Invoke-DotNetTest function (@matt-edmondson)
  • Fix TOCTOU race condition in CreateTempDirectory method (@matt-edmondson)
  • Refactor memory statistics display and reduce cognitive complexity (@matt-edmondson)
  • Refactor ConsoleApplicationService and introduce new services for improved functionality (@matt-edmondson)
  • Fix navigation stack functionality and improve menu handling (@matt-edmondson)
  • Refactor Invoke-DotNetTest to streamline test execution and update SonarQube configuration (@matt-edmondson)
  • Fix side-by-side diff alignment and improve file path labeling (@matt-edmondson)
  • Refactor derived cursor rules and console application service for clarity and maintainability (@matt-edmondson)
  • Refactor coverage handling in CI workflow and PSBuild.psm1 (@matt-edmondson)
  • Fix build errors in FileDiffer by removing tuple deconstruction for ColorCodePair (@matt-edmondson)
  • Fix test failures and improve test isolation in BatchProcessor and AppDataBatchManager (@matt-edmondson)
  • Refactor and restructure core application components (@matt-edmondson)
  • Enhance console application structure and functionality (@matt-edmondson)
  • Update SonarQube configuration and coverage report generation in CI workflow (@matt-edmondson)
  • Enhance navigation stack and refactor menu handling for improved user experience (@matt-edmondson)
  • Enhance coverage collection in Invoke-DotNetTest and update SonarQube configuration (@matt-edmondson)
  • Refactor BatchProcessor for improved readability and maintainability (@matt-edmondson)
  • Refactor coverage handling and update test project configuration (@matt-edmondson)
  • Implement safer file grouping in diff processing to prevent unrelated file merges (@matt-edmondson)
  • Enhance coverage collection in Invoke-DotNetTest function (@matt-edmondson)
  • Refactor file handling and improve test coverage for file operations (@matt-edmondson)
  • Fix null initialization for collection properties in BlockContext (@matt-edmondson)
  • Add analysis report on file organization between Console App and Core projects (@matt-edmondson)
  • Refactor coverage command execution in .NET CI workflow for improved reliability (@matt-edmondson)
  • Refactor BlockContext and DiffPlexHelper for improved clarity and maintainability (@matt-edmondson)
  • Update project rules (@matt-edmondson)
  • Enhance .NET CI workflow with improved diagnostics and coverage reporting (@matt-edmondson)
  • Refactor file grouping logic in FileDisplayService for improved clarity (@matt-edmondson)
  • Fix navigation issues and enhance menu display (@matt-edmondson)
  • Extract nested class InputState into its own file to improve code organization and maintainability. Updated derived cursor rules to prohibit nested classes, enhancing adherence to best practices. Cleaned up HistoryInput.cs by removing the nested class definition. (@matt-edmondson)
  • Refactor test coverage execution in CI workflow to enhance reliability and usability (@matt-edmondson)
  • Fix duplicate menu item and message display in batch processing (@matt-edmondson)
  • Implement GenerateUnifiedDiffFromContent method and enhance DiffPlexDiffer functionality (@matt-edmondson)
  • Update authors and copyright information, enhance project descriptions, and refine package dependencies (@matt-edmondson)
  • Refactor ConsoleApplicationService and CLI components for improved organization and functionality (@matt-edmondson)
  • Enhance security in FileFinder and improve error handling in DiffPlexDiffer (@matt-edmondson)
  • Update coverage reporting and SonarQube integration in CI workflow (@matt-edmondson)
  • Update file similarity calculation in IterativeMergeOrchestrator to use file system parameter (@matt-edmondson)
  • Refactor loop patterns in BatchOperationsMenuHandler and AsyncFileDiffer for improved clarity and performance (@matt-edmondson)
  • Refactor file comparison and UI handling for improved maintainability (@matt-edmondson)
  • Refactor coverage collection in .NET CI workflow to use dotnet-coverage tool (@matt-edmondson)
  • Refactor Invoke-DotNetTest function to streamline command execution (@matt-edmondson)
  • Refactor BatchProcessor to streamline parameter handling and enhance user feedback (@matt-edmondson)
  • Refactor ConsoleApplicationService methods to be static and pass instance as parameter (@matt-edmondson)
  • Enhance whitespace visualization and improve diff display functionality (@matt-edmondson)
  • Fix regex timeout vulnerability in FileFinder service (@matt-edmondson)
  • Fix failing tests and improve coverage for file processing and diffing functionality (@matt-edmondson)
  • Add batch processing functionality and command line options (@matt-edmondson)
  • Update test command in Invoke-DotNetTest to use simplified coverage collection name (@matt-edmondson)
  • Refactor methods in BlockMerger and CharacterLevelDiffer to reduce cognitive complexity and improve readability (@matt-edmondson)
  • Refactor side-by-side diff processing for improved accuracy and clarity (@matt-edmondson)
  • Refactor code for improved maintainability and reduced complexity (@matt-edmondson)
  • Add troubleshooting documentation for CI build error related to unused using directives (@matt-edmondson)
  • Add SonarQube integration to CI workflow (@matt-edmondson)
  • Refactor side-by-side diff processing to enhance accuracy and clarity (@matt-edmondson)
  • Refactor loop in BatchOperationsMenuHandler for improved readability (@matt-edmondson)

Installer type: zip

Architecture Scope Download SHA256
x86 Download 8FD265CA1B2DC44E48353074FCE5DB4BCF8978BFA7140AE4E31D8A4698DEB44F
x64 Download D7656127A7060D9364333DB9EEBB8BADF6F423C1FAE62667AFFF5947579A9B12
arm64 Download 085A5EC321DAB1EA65BD46815E27EE956C079A2702DF44434D791FA4B3BE7E8E

Details

Homepage
https://github.com/ktsu-dev/BlastMerge
License
MIT
Publisher
ktsu.dev
Support
https://github.com/ktsu-dev/BlastMerge/issues
Copyright
Copyright (c) ktsu.dev
Moniker
blastmerge

Tags

clidifffilesgitmergerepositorysyncsynchronizationtuiversion-control

Older versions (1)

1.0.19
Architecture Scope Download SHA256
x64 Download 27D6DF71A241EA1E7FEE1A7EFA64D3F5C662C0921F2C722A9B98C24D08C666E7
x86 Download 6D76BAF2DA529E408149BC4521579D38FE1BE4FFB57014695DE348C998AB65BE
arm64 Download 42C6B56519850E4E7AF6371C83EF80C34C703B2492C924591862863C2BB7971C