Track committer additions with git history#33
Conversation
After #31, people who received commit access since a year ago were tracked with the date of commit bit reception. While this works, it's not necessary in the long term, because the git history will keep track of when commit bits are given. This change starts using the commit history when possible, which allows avoiding the need for adding addition dates for new committers.
Now also documents testing of how the commit history is used to infer committer addition times. To make that work, we use a clean members-test directory that is guaranteed to not exist in the upstream repo, so it has a clean history that isn't conflicting.
wolfgangwalther
left a comment
There was a problem hiding this comment.
I first wasn't sure why this is needed, but it makes sense when a PR-based workflow is considered: It's impossible to add the merge date to the PR in advance, so this would create additional work.
Note: This actually requires the PR workflow, because otherwise dates might be wrong, if the sync doesn't happen immediately. The last automated sync was open for two weeks, before it was merged.
(alternatively, auto-merge the auto-syncs...)
philiptaron
left a comment
There was a problem hiding this comment.
At work we call this pattern "huffing your own exhaust" since the history of the repo forms a key part of the data of the repo.
I don't know. I don't like it very much, since it makes straightforward use of the files here not very useful and not amenable to scripting with tools.
|
@philiptaron For now this unblocks #23 (comment). I'm open to having an alternative solution in the future, but don't think it's worth spending much time on this when we have something that works. |
|
Yeah I'm not blocking it. We can always switch to a file-based model. |
After #31, people who received commit access since a year ago were tracked with the date of commit bit reception. While this works, it's not necessary in the long term, because the git history will keep track of when commit bits are given.
This change starts using the commit history when possible, which allows avoiding the need for adding addition dates for new committers.
This is fully tested already and confirmed to work correctly.