I've been trying KeePassXC as are replacement for KeePass2 (mono). Very nice work and nicer to use than KeePass2.
But I'm a bit confused about the synchronization comment in the FAQ. Consider the following use case:
This seems very prone to error and is the point of the synchronization feature provided by KeePass2, as I understand. Perhaps I'm missing something here. Any thoughts?

These two options in the settings should address your third point.
The main issue is if there are simultaneous changes from different devices. KeePassXC uses a lock file, but if other devices use KeePass2, KeeWeb, etc which ignore the lock file, there might be conflicts.
The lock file is a precaution. You can choose to ignore it at your own risk. KeePass2 doesn't have a lock file, but using the same database with two clients at the same time isn't any safer. It just doesn't tell you that.
Thanks, this is a big help!
I did not notice those options pointed out by adatum. I don't think that KeePass2 has these options so that's a nice improvement for KeePassXC.
I believe that KeePass2 does have a lock-file option, but I've not used it, so I don't know if/how it works.
I would never be trying to save/synchronize/merge two KeePass databases simultaneously; that would require me to be in two places at the same time :) I only need the open clients to handle time stamps based on changes for two (or more) clients consistently. I am happy to use KeePassXC on all my read-write KeePass instances, this should work for me.
Thanks!!
Last I checked, KeePass2 didn't have auto save/reload on changes, but it can be achieved with Triggers (i.e. macros). I'm glad KeePassXC has explicitly implemented such a fundamentally useful feature.
Yes, I believe that's right: KeePass2 does not autosave or autoload on changes. Yes, one could use triggers. Instead, I manually click on "synchronize" when I notice a missing change, and the the merge algorithm do its thing.
Given the relatively infrequent number of changes to the database, I think that the KeePassXC options of autosave/load is better!
I'm not sure if this is the same issue or not, but I miss the "Synchronize with File" from the old keepass.
I work (mostly) on two different machines. I like to be able to update my password file on whichever machine I happen to be working. I keep a password file locally on each machine, and I use the "synchronize to file" feature, together with a thumb drive, to keep the two password files synchronized.
I realize this is clunky and manual, and for some people, synchronizing via the cloud might be considered better. However, one of my machines is a an employer provided laptop that is blocked from connecting to cloud storage sites. Dropbox, Google Drive, and so on are all blocked. I can however, email files back and forth, or move files back and forth via a thumb drive. And even if I can synchronize via the cloud, I have a personal preference for keeping everything local, on hardware I own and control. Sure, I use the cloud sometimes, for example when I want to share things with the world, but I prefer local storage and processing,
To summarize: the "Synchronize with FIle" was a very nice feature:
Unfortunately, this feature is gone in keepassXC.
Any chance of bringing it back? Seems like if the code is there for merging, it should be simple to put back in the capability to merge with an external file.
I would even consider doing the coding myself, if the community is open to having this feature restored.
Thanks,
Duncan
edited to add: My employer-provided machine can only connect to my employers network, and to the internet via the corporate proxy, which by the way runs a man-in-the-middle on all connections, including HTTPS (yes, they can do this, trust me). So, network connectivity from that machine is inherently suspect. I don't want to pass any personal sensitive data over the network from that machine. Yes, I know that, since they have admin control over that machine, I can't even trust local processing on the machine - they could be logging keystrokes - but I happen to have know what they (I should say "we") are and are not doing on employees machines, so I'm not worried about local processing.
Use File -> Merge from KeePassX database to merge in changes from another database.
Doh! There it is. I just didn't realize that was what I was looking for.
So, what exactly does that do? Is "Merge from" the same as "Synchronize with"?
Thanks,
Duncan
It tries to merge entries from the selected database with your open database.
So lets say I have opened myPwFile.kdbx on my hard drive, and I have another myPwFile.kdbx on a thumb drive. It sounds like with the hard drive file open, I should do a "Merge from" the thumb file, then a "Save" then a "Save as" to overwrite the thumb drive version. Then I would wind up with two identical files, both containing the latest version of everything in the two original files.
That sound right?
Yes.
There is a different issue tracking the Sync from file feature. Right now it's not automated and you have to do it manually
When doing "Save as", the most recently written database becomes the "currently open" one, right?
And this also means that the next time you open KeepassXC, it will open the "backup" instead, unless you do one more save as to overwrite the original file.
I think the "Save as -> Save Copy to file..." option in Keepass2 is really nice that way. It lets you overwrite your backup and still remain in the "original" database.
There is a new feature in v2.3 that allows you to automatically save a backup of your previous database. Not exactly what you are referencing, but good for "oops" events.
I'm also missing the "Synchronize with File" feature of keepass2.
as @climb-on mentioned, this is a really nice property:
Never have to worry about which file is the "master" copy or the latest - just do a "synchronize" and let the software do the magic of making sure the latest entries are kept.
Both databases become the same and I don't have to worry which way I'm merging.
This feature is being worked on in #2109
Most helpful comment
There is a new feature in v2.3 that allows you to automatically save a backup of your previous database. Not exactly what you are referencing, but good for "oops" events.