Wiki source code of Unix Merge Configuration Files

Last modified by Eleni Cojocariu on 2026/08/13 15:14

Show last authors
1 When [[upgrading an XWiki distribution using the ZIP package>>documentation.xs.admin.upgrade.distribution.upgrade-zip-package.WebHome]] on a Unix system, the configuration files have to be merged rather than overwritten, so that your settings survive and the options the new version added are kept. The commands below do that with standard Unix tools, assuming ##xwiki.new## is the directory of the new installation and ##xwiki## the directory of the previous one.
2
3 == Back Up the New Files ==
4
5 Each configuration file of the new installation — ##web.xml##, ##xwiki.cfg##, ##xwiki.properties##, ##struts-config.xml## and ##logback.xml## — is first moved aside under an ##.ori## extension, so that the merge can write the result back under the original name:
6
7 {{code language="bash"}}
8 mv xwiki.new/WEB-INF/web.xml xwiki.new/WEB-INF/web.xml.ori
9 mv xwiki.new/WEB-INF/xwiki.cfg xwiki.new/WEB-INF/xwiki.cfg.ori
10 mv xwiki.new/WEB-INF/xwiki.properties xwiki.new/WEB-INF/xwiki.properties.ori
11 mv xwiki.new/WEB-INF/struts-config.xml xwiki.new/WEB-INF/struts-config.xml.ori
12 mv xwiki.new/WEB-INF/classes/logback.xml xwiki.new/WEB-INF/classes/logback.xml.ori
13 {{/code}}
14
15 == Merge with sdiff ==
16
17 ##sdiff## then compares the file from the old installation with the backup of the new one and writes the merged result into the new installation:
18
19 {{code language="bash"}}
20 sudo sdiff xwiki/WEB-INF/web.xml xwiki.new/WEB-INF/web.xml.ori -B -W -E -o xwiki.new/WEB-INF/web.xml
21 sudo sdiff xwiki/WEB-INF/xwiki.cfg xwiki.new/WEB-INF/xwiki.cfg.ori -B -W -E -o xwiki.new/WEB-INF/xwiki.cfg
22 sudo sdiff xwiki/WEB-INF/xwiki.properties xwiki.new/WEB-INF/xwiki.properties.ori -B -W -E -o xwiki.new/WEB-INF/xwiki.properties
23 sudo sdiff xwiki/WEB-INF/struts-config.xml xwiki.new/WEB-INF/struts-config.xml.ori -B -W -E -o xwiki.new/WEB-INF/struts-config.xml
24 sudo sdiff xwiki/WEB-INF/classes/logback.xml xwiki.new/WEB-INF/classes/logback.xml.ori -B -W -E -o xwiki.new/WEB-INF/classes/logback.xml
25 {{/code}}

Get Connected