Follow

git trans question 

how do you accomodate people who don't want to use git because it can't retroactively change author details?

not helpful, a take 

@jookia always use handles for git commits and not non-handle names?

i guess this is a separate question: do trans people largely feel like they want to change online handles as well as names during transitioning? because i feel like this largely isn't the case

not helpful, a take 

@haskal i mean yeah that's the obvious answer. icouldn't give less of a shit what contact details people use for git: real names, usernames, UUIDs, whatever.

re: git trans question 

@jookia don't

re: git trans question 

@jookia because immutability is a good thing and the use-case is dumb and niche

re: git trans question 

@jookia because this is a problem for literally no one.

case 1: person uses git, realizes they're trans and wants to change their name - but they're already using git
case 2: person is trans, doesn't have any reason to change their name again, so they can use git

re: git trans question 

@mewmew @jookia Are we talking about git, or github? Bevause they are not the same.

I havent looked into it but Im pretty sure there is a way to change a contributor's name manually by manually editing the repository data. however, it probably wont be easy.

The reason why is that it would be chaos if someone decided to change names several times and commit changes with different names.

re: git trans question 

@enigmatico @mewmew i'm talking about git, as hinted by me saying 'git'

there's not a way to change a name manually

re: git trans question 

@enigmatico @mewmew @jookia You can use mailmap to hide your old name so that it isn't accidentally discovered. That might be as close as you can get without changing all of history.

re: git trans question 

@mewmew @jookia

Identity is something that sometimes needs experimenting or can just change/flow over time. So there's also a case 3: People who are still searching, are experimenting, or feel their identity isn't set in stone. They may very well want to change their name later

re: git trans question 

@ilja @jookia Sure... but this isn't a Git problem. If you change your name, keep the old ones on the old commits. I'd prefer it that way, tbh.

re: git trans question 

@mewmew @jookia It may not be a problem for you personally, but if there are people who feel uncomfortable with this and therefor uncomfortable with using git (which is widely used in the floss world), then there is a problem. Is the solution to make it possible to change name? I don't know, I'm not the right person to answer that. But you can't say there isn't a problem when there are people for whom this is a problem (which the op implies, so unless proven otherwise, is something I'll accept)

re: git trans question 

@ilja @jookia I just... the only people this seems like it'd be a problem for are people who want to change their name in the future but don't know what they're going to change it to. In which case, I would use a pseudonym.

re: git trans question 

@ilja @mewmew @jookia I think the only solution, or easy solution, is to simply using a nickname as people has suggested.

Allowing people to change names on commits would be chaos because its going to be really hard to track who is who. And using user identifiers wont make things much easier, you still have to find the real name for an identifier and then keep track manually of who has that identifier. it would be a mess.

Im still sure there has to be a way to change a name in the server side of things by manually editing the data, but its not going to be easy and the more complex the project is, the more difficult it might be.

All in all, you can give up on that one because there is no easy solution for that.

re: git trans question 

@enigmatico @mewmew @ilja UUID mappings that are stored in the git repo as updatable refs

re: git trans question 

@jookia @mewmew @ilja Yes, and then keep track of that UUID belongging to a previous name. And dont forget, if an user goes rogue and changes names 1000 times and makes 1000 commits, you also have to keep track of that. And if the repo has 1000 users, then you have to keep track of who is who through their identifier string.

Just no

re: git trans question 

@enigmatico @mewmew @ilja i didn't mention anything about commits lol. git wouldn't need to remember previous names

re: git trans question 

@jookia @mewmew @ilja Oh no, the problem is not Git.

The problem is, if I have a maintainer called Jack and then one day I see a commit from a maintainer called Jane, and I have no clue who Jane is, I have to look it up and then remember who is who. For projects with few people, this isnt a big issue. For projects with hundreds of people, this can lead to chaos if people starts changing names.

Here is an easy solution: make a new account and just make your commits from now on with your new name, and then forget about your old account.

re: git trans question 

@ilja @mewmew @jookia if it makes people feel uncomfortable, it would be an issue. A tool is only as useful as the people using it.

That said, git itself is but the lower level tool. Its main purpose is to keep track of changes, doing so in the format of a node tree. Since each node is an historical event, it should naturally be immutable. So to allow any information in a node to be changed just sounds like asking for trouble to me.

The proposed idea of using an uuid (or some other sufficiently unique identifier) as the author name sounds like a good idea (and can be done without any modifications to git), that just leaves you with uuids for author names. Git has no such functionality to resolve them to actual usernames, because it would need to fetch it from some place. While that may seem like a simple problem to solve, it is not. Remember that git is a *distributed* system, not a *federated* system. You'd need username federation in some way to keep track of the usernames. Quite frankly, that goes well beyond the scope of what git, as a tool, is supposed to be doing. Remember the UNIX philosophy: do one thing and do it well.

So naturally, resolving uuids to usernames would be a problem for a git frontend to solve, like gitlab, github, gitea/gogs, and other such comparable software. These systems already keep track of users, so it would not be a massive undertaking to use a kind of static uuid for each user and use that as the author name in the git commits. Then just let the frontend resolve these uuids to the respective usernames, as they are there and then. The only problem here that still persists is if you have git commits made by people that aren't registered on that particular git instance. To solve that, you would need an actually federated system.

So, to put it bluntly, it's not as easy a problem to solve as it seems. While I agree that this would be a purposeful feature to provide, I would reject modifying git itself; that would create more problems than it would solve.

re: git trans question 

@ilja @jookia @mewmew There's another possible direction to take this btw. Remember gravatar? Register your email address in a central gravatar database and tie an avatar to it. That way it would be available in any system that provided support for fetching avatars from gravatar by means of your registered email address.

I suppose a similar solution could be used for this problem is well, except it would resolve identifiers to usernames. Support for that would be much less of a hassle to incorporate into git itself, and you'd properly split up responsibilities between git and a gravatar-like service. After all, it would only need to do a lookup. You could also build it as an extension, so people could enabled or disable it at will.

re: git trans question 

@fristi @mewmew @ilja git can already replace names using mailmap. store the mailmap blog as a ref that can be replaced. problem solved.

re: git trans question 

@mewmew @jookia Immutability is good for the code and all, sure, but how useful is having logs for a name that isn't even the author's real name anymore?

Usecase isn't dumb or niche. Girls can marry. People change their names for numerous reasons. (People also change their e-mails, and they're part of that same git identifier)

git trans question 

@jookia i just made all my old git repos with old name private lol
@jookia git can't retroactively change names, it's by design, commits are immutable, so if a commit's done under a certain name it's always gonna be like that

@tuxcrafting so why not something like modifying git to use UUIDs for authors instead

@jookia @tuxcrafting why?

if it's a problem for you, just make your name a UUID

@mewmew @tuxcrafting the main problem is that projects often don't want psuedonyms

@jookia @mewmew then that's their fault, requiring real names is stupid anyway
@jookia @tuxcrafting there is literally no problem other than the dumb project managers.

@mewmew @tuxcrafting if you're not convinced this is a problem, leave the convo. thanks.

@jookia @mewmew the only problem here is requiring people to use their real name within the commit metadata, so it is a project management problem

@tuxcrafting @mewmew if you think about it for more than a minute the answer is fairly obvious

@jookia @mewmew the problem is not technical within git, that's the thing
git perfectly supports using UUIDs as name or something, the problem is when projects require using one's real name in the commit history

@tuxcrafting @mewmew again missing the point entirely. the problem is changing names

@jookia @tuxcrafting It's not a problem. Just set the name to your personal website if you want, and share what your name is there.

Git's immutability is a great benefit. The only way to add what you want is to add a separate way for Git to track name changes, which overcomplicates things, and must break immutability.
@jookia @tuxcrafting ah, "I wanna fork software because software BAD and I refuse to accept any other solutions"

XY problem / Dunning-Kruger
@jookia @mewmew to add what? immutable author names is built in the design of the git blockchain
@jookia that would be the best solution yes
but not possible with current, stock git
@tuxcrafting @jookia History can be rewritten if this is the dark path you choose the walk-

But regardless, this is fixable easily without doing any dark magic, commits could just straight up switch to, I recommend, a regular plain UUID you can then be looked up by.
@penny @jookia yes! but this is not a technical thing with git, once again, git perfectly supports UUIDs as author names
@penny @jookia some git viewers in fact actually implement this, replacing handles in the commit history with the registered user's info

@tuxcrafting @penny the problem bieng that git doesn't support resolving UUIDs to names

Sign in to participate in the conversation
Mastodon

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!