Revisiting tradition: branches and tags
Dr. Matthias St. Pierre
Matthias.St.Pierre at ncp-e.com
Tue Apr 14 07:28:26 UTC 2020
> > Is it possible to set up alias names for the historical branches?
>
> It's possible yes. The hard part is 1.1.1. There *is* something
> called 'git symbolic-ref', but they can only be added in repos we have
> physical access to, so while can add those on our git server, and they
> will work, we cannot add them in github.
>
> Ref git help symbolic-ref
Symbolic references are *not* the right solution to the problem IMO. They are not equivalent to branches.
Checking out a symbolic reference leaves you in the 'detached HEAD' state:
msp at msppc:~/src/openssl$ git symbolic-ref ossl111 refs/heads/OpenSSL_1_1_1-stable
msp at msppc:~/src/openssl$ cd ../openssl-1.1.1
msp at msppc:~/src/openssl-1.1.1$ git checkout ossl111
Note: switching to 'ossl111'.
You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.
The proper way to do it IMO is to create new branch and tag references for all the stable branches
resp. release tags. We change the GitHub setup such that pull requests to stable branches need to
be based onto the new-style branches, but keep the old-style stable branches in sync with the new-style
branches for a little while. Currently, the only old-style branch which needs to be synchronized is
` OpenSSL_1_1_1-stable`. This could easily be done by the git post-receive hook on git.openssl.org.
In fact, all old-style branch and tag references for all eol-branches could be removed immediately.
Matthias
More information about the openssl-project
mailing list