Search code examples
fossil

How can I synchronise usernames between Chiselapp and local Fossil?


My username on Chiselapp differs from my username on my local machine (which seems to be my Fossil username). I have noticed that both appear in my commit history. How can I synchronise these usernames so that I am the same user in both locations?

My hunch is that it will be easiest to define a new Fossil username locally. Does the "user ID" value matter? Can I shun the old username? Ideally I would want to do this per-local-repo, not globally on my local machine, in case I use a different Fossil service provider at a later date.


Solution

  • You can do this in a much faster and consistent way using fossil configuration. The configuration command covers a number of "areas", including your ticket configuration, UI css etc.

    For what you describe, you would want to push or pull the user area:

    fossil configuration pull user
    

    Assuming that you have a remote-url in place. You can also push your user data if you so wish. The method you describe through the UI also works, of course. Working with configuration is faster and has more options.

    You can change the username in a check-in. Through the UI, for example on the timeline, click on a checkin and then select "Edit" on the bottom of "Overview" (just above "tags and properties"). You will find that the first item you can edit is "User". Of course a record of the change will be made as whatever user you are logged in when you make the change. It will say something like:

    Control file referencing [6ca0f57251] - 
    Edit [58b7da6d030f457a87c67aebbdfd2dfcab674d28|58b7da6d03]: 
    Change user to ""changedUser"". by currentuser on 2015-02-12 22:04:07.
    

    I mention that last part to note that you still cannot change the history, as any change will be recorded as such. As far as I know there is no way to do this for every single occurrence of a particular user name through the configuration settings.