[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [RFC] Add upstream VCS info to control file



On 06/14/2012 09:23 PM, Gergely Nagy wrote:
> Gregor Jasny <gjasny@googlemail.com> writes:
>   
>> When one tries to fix a FTBFS bug a look into the upstream VCS is
>> often helpful. Sometimes a link to browse them is easily found on the
>> homepage linked from the PTS page. But often these links are deeply
>> buried in the linked website.
>>
>> What I'd like to see in the Debian control file are Vcs-Upstream
>> fields that work like their Vcs- pendents but point to the upstream
>> sources. These URLs would also be linked in the PTS.
>>
>> Does this sound reasonable?
>>     
> I'd rather put it in debian/README.source, I see no need of shoveling
> yet more fields into debian/control. (Yeah, yeah, having it there would
> make it possible to do debheckout --upstream or similar, but.. that
> would be rarely needed enough to use README.source instead).
>   

I've been thinking about this for a long time as well. Thanks Gregor to put
this on the table.

I quite not agree with both "solutions" to use debian/README.source
or debian/upstream. Here's why.

1/ Packaging workflow with upstream Git repository
=-=-=-=-=-=-=-=-
When using Git, it's quite a common practice to only store the debian
branch on Alioth, then have the master branch stored ... upstream.
See for example:

http://openstack.alioth.debian.org/

2/ What do we need
=-=-=-=-=-=-=-=-
It would be really great to have everything stored in debian/control,
so we could write a shell script to fetch all needed branches based
on that. Ideally, I would like to be able to do something like:

debian-get-git-package --clone-source nova

and I would have as a result, a nova clone of:
git://anonscm.debian.org/openstack/nova.git

containing the debian/unstable branch, then a fetch of:
|https://github.com/openstack/nova.git

using the master branch.

3/ How to achieve it
|=-=-=-=-=-=-=-=-
|To acheive this, we would need something like this:

||Vcs-Git-Debian-Branch-Name: debian/unstable
||Vcs-Git: |git://anonscm.debian.org/openstack/nova.git
|||Vcs-Git-Upstream-Branch-Name: master
|Vcs-Git-Upstream: |https://github.com/openstack/nova.git

In case Vcs-Git-Upstream wasn't filled, then |debian-get-git-package
would do the guess that the master branch is also in the Vcs-Git.

4/ Please comment
=-=-=-=-=-=-=-=-
I don't mind if there's another solution than 3/, but I really would
love if we could achieve 2/. If using new debian/control fields isn't
a good idea, please explain why and what's the alternative. I though
that maybe, we could use debian/gbp.conf to do this. If the debian
branch is made the default one in Alioth, and if the gbp.conf tells
where to fetch upstream master branch, it seems doable.

Also, I've noticed that apt-cache show doesn't display the Vcs fields.
What's the way on the command line, so we could write such a
script that would clone the repo?

Thoughts anyone?

Cheers,

Thomas Goirand (zigo)


Reply to: