Difference between revisions of "Merging WPS"

From openwfm
Jump to navigation Jump to search
 
(14 intermediate revisions by the same user not shown)
Line 2: Line 2:
 
==Issue description==
 
==Issue description==
  
==Progress==
+
Our custom version of {{wrf-fire-path|WPS|WPS}} is based on WPS 3.x and the wrfinput files it produces are no longer compatible with current WRF. Also, its [[WPS with GeoTIFF support|geotiff support]] is not compatible with current geotiff files from [https://www.landfire.gov/ LANDFIRE]. Consequently we can't run with WRF4+ or update our geographical databases.
 +
 
 +
==Checking==
 
===Clone WPS and add wrf-fire repository as a branch===
 
===Clone WPS and add wrf-fire repository as a branch===
 
<pre>
 
<pre>
Line 15: Line 17:
  
 
===Compare WPS versions===
 
===Compare WPS versions===
===3.3.1===
 
 
<pre>
 
<pre>
 
git checkout wrf-fire-track/wps3.4
 
git checkout wrf-fire-track/wps3.4
Line 31: Line 32:
 
Only in ./util: zap_reg.csh
 
Only in ./util: zap_reg.csh
 
</pre>
 
</pre>
 +
 +
==Filtering==
 +
<pre>
 +
mkdir wrf-fire-wps-filtered
 +
cd wrf-fire-wps-filtered
 +
git clone --bare github:/openwfm/wrf-fire.git .git
 +
git config --bool core.bare false
 +
git reset --hard
 +
git filter-branch --subdirectory-filter WPS --tag-name-filter cat -- --all
 +
</pre>
 +
Now the top level directory has the contents of the WPS subdirectory only and files outside of WPS subdirectory are stripped from all commits. All branches that touch WPS are kept.
 +
<pre>
 +
git remote add filtered git@github.com:janmandel/wrf-fire-wps-filtered.git
 +
git push filtered --mirror
 +
</pre>
 +
 +
==Merge==
 +
Fork https://github.com/wrf-model/WPS as https://github.com/openwfm/WPS-merge then
 +
<pre>
 +
git clone git@github.com:openwfm/WPS-merge.git
 +
cd WPS-merge
 +
git remote add filtered git@github.com:janmandel/wrf-fire-wps-filtered.git
 +
git fetch filtered
 +
git checkout -b wrf-fire-filtered/master filtered/master
 +
git checkout -b wrf-fire-filtered/jb/wps filtered/jb/wps
 +
git push -u origin --all
 +
</pre>
 +
 +
==Notable branches and tags==
 +
* {{wps-merge-branch|master}} tracks upstream master
 +
* {{wps-merge-branch|wrf-fire-wps-filtered/master}}

Latest revision as of 14:23, 28 April 2019

Issue description

Our custom version of WPS is based on WPS 3.x and the wrfinput files it produces are no longer compatible with current WRF. Also, its geotiff support is not compatible with current geotiff files from LANDFIRE. Consequently we can't run with WRF4+ or update our geographical databases.

Checking

Clone WPS and add wrf-fire repository as a branch

git clone git@github.com:wrf-model/WPS.git
cd WPS
git remote add wrf-fire git@github.com:openwfm/wrf-fire.git
git fetch git@github.com:openwfm/wrf-fire.git
git fetch wrf-fire
git checkout -b wrf-fire-track/master wrf-fire/master
git checkout -b wrf-fire-track/wps3.4 wrf-fire/wps3.4

Compare WPS versions

git checkout wrf-fire-track/wps3.4
git checkout HEAD^
HEAD is now at 5e1819bd WPS update to version 3.3.1
cp -a WPS ../wps3.3.1
git checkout RELEASE-3-3-1
HEAD is now at bedb19c7 tagging 3.3.1 release
 diff -r -x .git . ../wps3.3.1
Only in .: test_suite
Only in ./util: make_regression_data.tar
Only in ./util: regtest_wps.csh
Only in ./util: wps_reg.html
Only in ./util: wps_reg_html_maker.csh
Only in ./util: zap_reg.csh

Filtering

mkdir wrf-fire-wps-filtered 
cd wrf-fire-wps-filtered
git clone --bare github:/openwfm/wrf-fire.git .git
git config --bool core.bare false
git reset --hard
git filter-branch --subdirectory-filter WPS --tag-name-filter cat -- --all

Now the top level directory has the contents of the WPS subdirectory only and files outside of WPS subdirectory are stripped from all commits. All branches that touch WPS are kept.

git remote add filtered git@github.com:janmandel/wrf-fire-wps-filtered.git
git push filtered --mirror

Merge

Fork https://github.com/wrf-model/WPS as https://github.com/openwfm/WPS-merge then

git clone git@github.com:openwfm/WPS-merge.git
cd WPS-merge
git remote add filtered git@github.com:janmandel/wrf-fire-wps-filtered.git
git fetch filtered
git checkout -b wrf-fire-filtered/master filtered/master
git checkout -b wrf-fire-filtered/jb/wps filtered/jb/wps
git push -u origin --all

Notable branches and tags