General mechanism to supply "rich history" to git-ubuntu

Scott Moser smoser at ubuntu.com
Tue Feb 2 15:48:07 UTC 2021


I think this is great. I think it is a game-changer for ubuntu development.
Thank you.

One thought inline.

>
>  5) If the commits pass sanity checks (eg. the final commit matches the
>     upload exactly), then it uses the commits provided instead of
>     synthesizing its own.
>
> What goes into the changes file is three fields. Example:
> https://launchpadlibrarian.net/516799033/hello_2.10-2ubuntu3~ppa1_source.changes
>
>     Vcs-Git: https://git.launchpad.net/~racb/ubuntu/+source/hello
>     Vcs-Git-Commit: 4511fdfc01cbfd5bc351e1da294d6acb44e8a4a2
>     Vcs-Git-Refs: refs/heads/test
>
> We need the Refs field because git is designed not to be able to fetch a
> commit by hash, but by a ref that can reach it only. So Vcs-Git-Refs
> must specify what ref(s), when fetched will make the commit given to be
> reachable. In practice this could just be the branch name prefixed by
> 'refs/heads/' as in this example.

In your example above, the 'refs/heads/test' has to exist (and to have the
referenced commit) in order for the importer to find it.

So the uploader would then have to not delete or force-push that reference
until some point in the future, right?

My only concern here is that I already have way too many branches
that I've pushed. This will just leave more manual maintenance for me
to not clean up these branches until the upload that references
them is landed.

Did I undestand that correctly?



More information about the ubuntu-devel mailing list