This project is a plugin module for FitNesse.
For those of us who fancy a more tight integration with their source control system there is a Git based version controller available. This version controller creates a commit for every page change. The .RecentChanges
page can also be tailored to show the Git version history, instead of the default file based history.
The latest version is available from Maven Central. You can download the fitnesse-git-plugin-X.Y-all.jar
file and place it in a directory named plugins
next to your FitNesseRoot
, or reference the plugin from a build tool.
To configure the Git version controller, add the following to your plugins.properties:
VersionsController=fitnesse.wiki.fs.GitFileVersionsController
RecentChanges=fitnesse.wiki.fs.GitFileVersionsController
The result is that the files are managed by Git and the Recent changes page is showing those changes.
This version controller takes into account ignored files. If you change a file that is listed as ignored (normally in a .gitignore
file), it will not be added to version control.
At least your `FitNesseRoot directory must be under version control. I tend to ignore the following files:
FitNesseRoot/FitNesse/
FitNesseRoot/RecentChanges/
FitNesseRoot/TemplateLibrary/
FitNesseRoot/files/testResults/
No. FitNesse will not push the changes. You'll have to do that yourself, since there's a good chance that things need to be merged.
Will FitNesse pull automatically the changes made in the Git repository? (otherwise is there any way to do that)
No. You'll have to do that yourself.
Since FitNesse does not pull or push changes, it does not have to deal with merge conflicts. It's up to the user to resolve those.
If you do not set the VersionsController
in your plugins.properties file, FitNesse will not commit on every page change, and you'll have to commit manually. You can still set the RecentChanges
property as described above to view changes in your repository.
That said, the default version controller is one that creates zip files for every commit, which is something you do not need then. Either provide the option -e 0
to the command line or
configure the versions controller as follows:
VersionsController=fitnesse.wiki.fs.SimpleFileVersionsController
This will simply store the pages to disc, but will not do any version management.
At this point there are no properties apart from the ones mentioned above.
There is currently no way to modify the commit message. PR's are welcome :)