I'm starting to organize my accounts more and gnucash seems like a good program to use. If possible, I would like to use version control for my repository (with git, for example) so that I have backups and can edit the file on multiple computers. In a related discussion ( http://gnucash.1415818.n4.nabble.com/sequential-use-of-Gnucash-on-multiple-computers-td4661963.html ) it's mentioned that merging two versions of the data might cause problems, but no one seems to have actually tried it. Also mentioned is that it would be a good idea to save the data uncompressed, and what files need to be saved.

Of course, the best practice is to never work on an old version, but this doesn't always happen in practice. Also, version control would be a great way to allow more than one person to work on the account, which makes merge conflicts somewhat more likely.

Has anyone tried this? Does git's merge function work well with gnucash's data format?


Updating the files via version control would allow multiple users in a way that is not intended and would circumvent the locking mechanism. Also, GnuCash primarily uses XML. Revision control systems patch text files in a way that is blind to XML's syntax and validation rules, occasionally resulting in a text file that isn't valid XML.

I fear that attempts to do this would appear to work for a while, but would corrupt things in subtle ways.

Perhaps look into the cloud versions of GnuCash. I haven't evaluated them.


Have you considered using a database backend? GnuCash does not allow multi-user access, even with a database, but if it is only going to be you using the program on multiple computers, that might be an acceptable alternative.

Then, you could keep backups of your database tables so that you could somewhat have a change history.


I use GnuCashPortable over dropbox and it works fine.

This lets me connect to the latest version of my Gnucash database from three different machines while dropbox takes care of syncing them. I don't have to install GnuCash on the machines either as I did it once on a dropbox folder

In essence, you can have multiple users access it but sequentially because dropbox locks the file when accessed by GnuCashPortable (good thing IMHO).

For version control, dropbox keeps old versions for upto 30 days for free while addons like pakrat can provide even more. 30 days is fine for me, plus, ona weekly basis, I do make a zip file of my main accounts folder containing the *.gnucash and other files.

  • 1
    I also use a Dropbox folder to sync gnucash files, but I install gnucash on all machines that I use it, I believe that the locking file feature is gnucash or windows related, not dropbox.
    – DaneoShiga
    Mar 8 '14 at 13:52
  • Do you encrypt the file before putting it in dropbox, and if so what do you use? Jun 3 '20 at 4:54
  • I moved on from GnuCash many many moons ago :) Jun 4 '20 at 8:34

I believe desktop version of GnuCash is not built for multiple users and doesn't provide support for collision resolutions and merges of transactions. Consider a situation where two users check the file out, and make different changes, and then check in - how are you going to resolve it? You'll have to manually go into the XMLs and edit the numbers to match the accumulated totals, whereas the standard version control procedure is to present you both options and let you chose one. Its not built for this.

There are on-line/multi-user products (like QuickBooks) that do provide this functionality. Maybe GnuCash has a branch for multi-user, don't know. Maybe you can develop one:-)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.