Skip to content
Martino Facchin edited this page Dec 31, 2020 · 3 revisions

This repo is a mirror of svn://svn.savannah.nongnu.org/avrdude/ moved to git, with some arduino specific patches preapplied.

In extreme syntesis, the migration process means just running

git svn clone --trunk=/trunk --branches=/branches --tags=/tags svn://svn.savannah.nongnu.org/avrdude/ avrdude-mainline
git filter-branch --subdirectory-filter avrdude -- --all  # removes the nested "avrdude" folder from all history
... do some stuff on the repo, see below
git remote add $thisreponame $thisrepourl
git push $thisreponame master:mainline

Some manual intervention is then needed to fix some of the repo peculiarities; tags are always created as snapshot branches with a single commit in them (usually a version change in config.am). Manually tagging the previous commit does the trick and maintains a decent history.

A branch called arduino-extrapatches containing, you guessed right, the extra patches, is then merged onto master .

In case we need to resync the repo with SVN, this strategy can be applied.

git reset HEAD~1 --hard  # this will remove the "final" merge commit
... apply the missing patches from mainline
git merge arduino-extrapatches

So, every pull request MUST be submitted to arduino-extrapatch branch to keep this going

IMPORTANT: an alternative linuxspi driver was recently added mainline; so at the moment arduino-extrapatches doesn't contain any commit from the original linuxspi patch (https://github.com/facchinm/avrdude/compare/39df580a0203dc503e10658e3d7a491887fe97ce..b5f8cd7f7235e441dccd7541e5c8c66d0096cafa)

Clone this wiki locally