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

Re: Understanding Git workflow around DEP-14



I'm no expert. I've commented inline with things I've done and how I read and understand DEP-14.

On Mon, Mar 11, 2019 at 1:30 PM <deb251@lewenberg.com> wrote:
I am packaging some upstream software for Debian and I am trying to
understand the workflow around "DEP-14: Recommended layout for Git
packaging repositories".

Looking at DEP-14 I might have these Git branches:

   master
   debian/master
   debian/stretch
   upstream/latest

I understand that the Debian packaging files in debian/ will appear in
the "debian/*" branch, but my general question is: what is the workflow
around all these branches? When and how do files get merged from one
branch to another?

git checkout debian/master
git merge upstream/latest

You want to keep the upstream/latest branch free of Debian specific packaging bits.

You can use tags to mark any upstream releases. Here is an example:

$ git tag
debian/2.4-1
debian/2.4-2
upstream/2.4

More specifically:

1. Besides the debian/ directory, what is the difference between the
"debian/master" branch and the "upstream/latest" branch?

I don't believe anything.
 

2. What should the "master" branch be used for?

I don't use the master branch with DEP-14. I believe the DEP is stating that you'd use "master" for native packages - which from the sounds of it, yours is not. Therefore, I'd not use "master".
 

3. When a new upstream tarball is released, where should it be imported?

Assuming you have a remote named "github", I suppose you'd do something like:

git pull github upstream/latest

Then, you'd do:

git checkout debian/master
git merge upstream/latest

Cheers,

-m

Reply to: