On 7/25/05, Shaun Jackman <[EMAIL PROTECTED]> wrote: > On 7/25/05, Richard Levitte - VMS Whacker <[EMAIL PROTECTED]> wrote: > > Nonsense. All you need to require is that each *private* key has a > > unique keyid. And honestly, who would want to have two private keys > > with the same keyid in the same database? > > I've run into a problem involving exactly this. Before I really > understood monotone's concept of databases and keys, I created two > projects each with their own db and each with their own private key, > although both keys have the same keyid. I'd now like to serve both > projects out of the same database, but I can't push changes from one > to the other because... > monotone: warning: saving public key for [EMAIL PROTECTED] to database > monotone: error: another key with name '[EMAIL PROTECTED]' already exists > > Any suggestion on how to remedy this? Can I rename the keyid in one of > the databases after the fact?
With the wonder of ~/.monotone/keys this is now fairly straight forward. The two keys both had a keyid of [EMAIL PROTECTED] I renamed one of the keys to ~/.monotone/keys/[EMAIL PROTECTED] In my busybox database, which was signed with the [EMAIL PROTECTED] while it was still named [EMAIL PROTECTED], I used this SQL call to rename the key in the database: mtn db execute 'update revision_certs set keypair = "[EMAIL PROTECTED]" where keypair = "[EMAIL PROTECTED]"' I've now relegated that old key to legacy, and I sign all my new changes with [EMAIL PROTECTED] One thing I didn't expect, but I understand now, is that `mtn log' and monotone-viz still show [EMAIL PROTECTED] as the author for *all* the changes, old and new. I now understand that both front-ends are simply showing the value of the `author' cert, which hasn't changed and is still [EMAIL PROTECTED] However, that cert is now signed by the [EMAIL PROTECTED] key. This make absolute sense; Alice can certainly certify that Bob is the author of a given revision. What's interesting though, is that the UI only shows that Bob is the author, and this cert is signed, but it doesn't show *who* signed it. Now that I understand this separation of keyid and author, I'd like to use Shaun Jackman <[EMAIL PROTECTED]> for all my future author certs. Besides being more descriptive, this aids generating ChangeLog entires from monotone logs. Is there a LUA hook to change one's preferred author cert? Cheers, Shaun
_______________________________________________ Monotone-devel mailing list Monotone-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/monotone-devel