Template:DevelopmentDevelopment of ImageJ and related software relies heavily on Git, a first-class distributed version control system. Git saves "snapshots" of the source code, keeping a history of changes.
See the source code page for information on where the Git repositories reside.
This web site has lots of tutorials on Git; see the left sidebar.
One of the most powerful things Git can do is rewrite a series of patches after the fact. This is a powerful technique worth learning. There are many guides available here and elsewhere:
- Modifying your commits section of the Contributing to a plugin page
- Advanced topic branch editing section of the Git topic branches tutorial
- Rewriting history tutorial from Atlassian
- 7.6 Git Tools - Rewriting History from the Git book
- About Git rebase article from GitHub
- Using Git rebase article from GitHub