Making WRF-Fire repository into a fork WRF-SFIRE of WRF

From openwfm

The WRF-Fire repository contained a complete copy of WRF, and the fire model files were provided to NCAR to be included in WRF, which was maintained in SVN at the time, and WRF file tree copied back into a subdirectory in WRF-Fire repository. After submitting the WRF 3.3 update in 2011, the files were changed from the submitted version,and the yearly submission stopped. Over time, upgrading to new versions of WRF has become more difficult.

Fortunately, the transition of WRF to GitHub in 2016 presented an opportunity to make WRF-Fire into a fork of WRF.

This was achieved in two stages:

  1. The original WRF-Fire repository used a different layout than WRF. Its fire-enabled WRF source lived under wrfv2_fire/, while WPS was in WPS/ subdirectory. That history was filtered so wrfv2_fire/ became the repository root. Commits kept their messages, authors, and dates, but every hash changed. The resulting branch survives as origin/filtered/master in WRF-SFIRE; the original survives as origin/wrf-fire-track/master.
  2. The filtered history was then merged into the WRF-based develop-sfire branch by git merge --allow-unrelated-histories in commit 5d428cd Merge branch 'wrf-fire-master-filtered' into develop-sfire.

This simplified WRF upgrade in WRF-SFIRE into a git pull.

In 2013, fire model files in WRF source phys/module-fr-sfire-*.F were renamed to phys/module-fr-fire-*.F (commit ff7ec687 Rename all of the fire files, and the associated subroutines.), which had the effect that future changes to the files in WRF did not create a conflict when the development of WRF-Fire within WRF at NCAR continued independently later, starting with e26f21f in 2015. Only registry/registry_fire, real.exe source dyn_em/module_initialize_fire.F and test problems in test/fire remained common and need to be reconciled after every WRF upgrade.