https://github.com/rasa/regdelta
Diff, export, and sort Windows registry files
https://github.com/rasa/regdelta
Last synced: about 1 year ago
JSON representation
Diff, export, and sort Windows registry files
- Host: GitHub
- URL: https://github.com/rasa/regdelta
- Owner: rasa
- License: mit
- Created: 2015-02-18T20:48:44.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2015-05-21T03:59:28.000Z (about 11 years ago)
- Last Synced: 2023-04-01T08:24:06.621Z (over 3 years ago)
- Language: C++
- Homepage:
- Size: 266 KB
- Stars: 6
- Watchers: 3
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# regdelta [![Flattr this][flatter_png]][flatter]
Diff, export, and sort Windows registry files.
## Usage
````
regdelta [options] [key | file.reg] [key | file.reg]
Options:
-a | --all Compare/export all keys (HKCC HKCU HKCR HKLM HKU)
-x | --export key(s) ex.reg Export key(s) to ex.reg
-o | --output output.reg Set output filename to 'output.reg'
-c | --comments Include original values as comments in diff
-r | --regedit Export in RegEdit format (implies -u -w)
-u | --unsorted Do not sort the keys or values, as RegEdit
-w | --wordwrap Wordwrap at 78 chars, as RegEdit
-v | --verbose Show warnings that are normally hidden
-V | --version Show version & copyright information & quit
-? | --help Show this help message and quit
````
## Examples
````
regdelta HKCU hkcu.reg ; compare HKCU key with hkcu.reg
regdelta HKCU\1 HKCU\2 ; compare HKCU\1 key with HKCU\2 key
regdelta -o diff.reg HKCU hkcu.reg ; compare HKCU key with hkcu.reg
regdelta -x HKCU hkcu.reg ; export HKCU key to hkcu.reg
regdelta -xr HKCU\Software ex.reg ; export HKCU to ex.reg in REGEDIT format
regdelta -ax allkeys.reg ; export all keys to allkeys.reg
````
## Notes
````
regdelta.exe reads and writes ASCII .reg files (Windows 9x/NT 4)
regdeltau.exe reads and writes Unicode .reg files (Windows 2000/XP/2003)
'key' can be one of the following:
HKCC HKEY_CURRENT_CONFIG
HKCU HKEY_CURRENT_USER
HKCR HKEY_CLASSES_ROOT
HKLM HKEY_LOCAL_MACHINE
HKU HKEY_USERS
````
Reads entire registry into memory for performance, so this may be an
issue in a low memory environment.
## To Do
Compare currently only works on files created by regdelta. This will be
fixed in a related release.
Add HKA | HKEY_ALL key
Options:
````
-e | --execute 'cmd' ex.reg Execute cmd & save differences to ex.reg
-s | --sort in.reg out.reg Sort in.reg to out.reg
````
Examples:
````
regdelta -s input.reg output.reg ; sort input.reg to output.reg
regdelta -e 'setup.exe /S' ex.reg ; run setup & save differences in ex.reg
````
To emulate the --execute option, I've used this batch script, called regdiff.cmd:
````
@echo off
del "%TEMP%\~regdiff_?.reg" >nul 2>nul
regdelta.exe -ax "%TEMP%\~regdiff_1.reg"
start /wait %*
regdelta.exe -ax "%TEMP%\~regdiff_2.reg"
regdelta.exe -o "%~1_redo.reg" "%TEMP%\~regdiff_1.reg" "%TEMP%\~regdiff_2.reg"
regdelta.exe -o "%~1_undo.reg" "%TEMP%\~regdiff_2.reg" "%TEMP%\~regdiff_1.reg"
del "%TEMP%\~regdiff_?.reg" >nul 2>nul
````
## Verify a Release
To verify a release, download the .zip, .sha256, and .asc files for the release
(replacing regdelta-1.1-win32.zip with the release you are verifying):
````
$ wget https://github.com/rasa/regdelta/releases/download/v1.1/regdelta-1.1-win32.zip{,.sha256,.asc}
````
Next, check that sha256sum reports "OK":
````
$ sha256sum -c regdelta-1.1-win32.zip.sha256
regdelta-1.1-win32.zip: OK
````
Lastly, check that GPG reports "Good signature":
````
$ gpg --keyserver hkps.pool.sks-keyservers.net --recv-key 0x105a5225b6ab4b22
$ gpg --verify regdelta-1.1-win32.zip.asc regdelta-1.1-win32.zip
gpg: using RSA key 0xFF914F74B4BB6EF3
gpg: Good signature from "Ross Smith II " [ultimate]
...
````
## Contributing
To contribute to this project, please see [CONTRIBUTING.md](CONTRIBUTING.md).
## Bugs
To view existing bugs, or report a new bug, please see [issues](../../issues).
## Changelog
To view the version history for this project, please see [CHANGELOG.md](CHANGELOG.md).
## License
This project is [MIT licensed](LICENSE).
## Contact
This project was created and is maintained by [Ross Smith II][] [![endorse][endorse_png]][endorse]
Feedback, suggestions, and enhancements are welcome.
[Ross Smith II]: mailto:ross@smithii.com "ross@smithii.com"
[flatter]: https://flattr.com/submit/auto?user_id=rasa&url=https%3A%2F%2Fgithub.com%2Frasa%2Fregdelta
[flatter_png]: http://button.flattr.com/flattr-badge-large.png "Flattr this"
[endorse]: https://coderwall.com/rasa
[endorse_png]: https://api.coderwall.com/rasa/endorsecount.png "endorse"