= I don't git it, but now you will = == Debian patching workflow for new upstream versions == === Update each patch branch === * {{{git checkout debian/patches/xxx}}} * {{{git merge upstream}}} * Resolve possible conflicts * Repeat for all patch branches === Merge new upstream + updated patches + dropped patches + master (debian) === * {{{git checkout -b merge/$upstream_version upstream}}} * Merge each updated patch branch * {{{git merge --no-ff debian/patches/xxxx}}} * Discard each obsolete patch branch * {{{git merge --no-commit -s ours debian/patches/xxxx}}} * {{{git commit -m "Discard branch 'debian/patches/xxx' from merge/$upstream_version"}}} * {{{git merge -s recursive -X ours master}}} * {{{git checkout master}}} * {{{git merge merge/$upstream_version}}} === Untested alternative merge workflow === * {{{git checkout master}}} * {{{git merge -s recursive -X theirs upstream}}} * {{{git merge -s recursive -X theirs debian/patches/xxxx}}} * Repeat for all patch branches === diffstat === {{{git diff upstream/2.10.1 upstream/2.10.3 | filterdiff -i '*.c' -i '*.h' -i '*.cs' --clean | diffstat}}} ---- CategoryGit