Filed under: Best Practices, Featured
  Comments: None

If you accidentally strip a patch and do not have a backup for it, you can still recover your files using Mercurial. To recover your files:

  1. Open a Microsoft Windows Command Prompt window.
  2. Navigate to the project folder where you stripped the files.
  3. Run the dir
  4. Navigate to the .hg folder where Mercurial stores all relevant project files.
  5. Run the dir command again.
  6. Navigate to the strip-backup folder where Mercurial stores the backup bundles of stripped patches.
  7. Run the dir command again. Multiple files display in the directory that use the <hash>-hg format. They are the backup bundles of stripped patches.
    post1
  8. Use Windows Explorer to find the required file. Open the strip-backup folder in Windows Explorer, and sort by Date modified descending. Unless the necessary backup bundle is already known, NexJ recommends that you restore the bundles in reverse chronological order starting from the most recent bundle.
    post2
  9. Navigate back to the project folder.
  10. To restore a bundle, run hg unbundle .hg\strip-backup\<bundle_file_name>. The hg executable can be found in <NexJ_Studio_installation_folder>\plugins\
    nexj.oss.hgbinaries_win32_<version>\os\win32
    . You may want to add it to the PATH environment variable to make it accessible globally.
    post3
  11. Synchronize the project in NexJ Studio to see the restored patch. If the restored patch is not the one needed, then continue restoring the patches in reverse chronological order until the required patch is retrieved.
    post4

Note: You may restore the backup bundles in any order, instead of using reverse chronological order. However, it may not be safe to do so. You may end up attempting to restore a backup bundle, which has a dependency on another backup bundle that has not been restored. In this case, you will get an error.
post5

Be the first to write a comment.

Your feedback

You must be logged in to post a comment.