Scroll to navigation

dgit-maint-gbp(7) dgit dgit-maint-gbp(7)

NOME

dgit - tutorial para maintainers de pacote que já usam git-buildpackage(1)

INTRODUÇÃO

This document explains how dgit and git-debpush can be incorporated into a git-buildpackage(1) package-maintenance workflow. This should be read jointly with git-buildpackage(1)'s documentation. Some reasons why you might want to incorporate dgit into your existing workflow:

  • Beneficia das capturas de segurança do dgit. Em particular, assegura que o seu envio corresponde sempre exatamente ao seu CABEÇALHO git.
  • Fornecer um histórico git melhor e mais detalhado a utilizadores do dgit de fluxo abaixo, tais com pessoas que usam dgit para fazer um NMU (veja dgit-nmu-simple(7) e dgit-user(7)).

Note que nós assumimos um repositório de patches-não-aplicadas: a fonte do autor cometida ao repositório git não tem patches. O git-buildpackage(1) pode funcionar com repositórios de patched-aplicadas, mas é normalmente usado com patches-não-aplicadas.

CONFIGURAÇÃO DO GIT

Se você configurou um export-dir no seu gbp.conf, você deve dizer ao dgit sobre isso:

    % git config --global dgit.default.build-products-dir /home/spwhitton/build-area

Se você correr

    % git config dgit.default.quilt-mode gbp

no seu repositório, você pode omitir --gbp sempre que ocorra em baixo.

Note que isto requer que você trabalhe sempre a partir do seu ramo mestre gbp, nunca do ramo patches-aplicadas do dgit.

COMPILAÇÃO

Você pode efetuar compilações teste como esta:

    % dgit [--include-dirty] gbp-build [OPÇÕES]

onde --include-dirty é necessário para testar alterações não cometidas, e OPÇÕES são quaisquer opções posteriores a serem passadas ao gbp-buildpackage(1).

If you are doing a source-only upload, you do not need to prepare a _source.changes, as dgit push-source or git-debpush will take care of that on your behalf.

Se você precisar de incluir binários no seu envio, vai provavelmente querer usar o use sbuild(1), pbuilder(1) ou o cowbuilder(1):

    % dgit --rm-old-changes --gbp sbuild

substituindo 'sbuild' por 'pbuilder' ou 'cowbuilder' como apropriado.

Nós usamos --rm-old-changes para assegurar que existe exatamente um ficheiro de alterações correspondente a este pacote, para estarmos confiantes que estamos a enviar o que pretendemos (apesar do dgit push fazer algumas verificações de segurança).

Note nenhum dos comandos nesta secção são requeridos para enviar com o dgit. Você pode invocar gbp-buildpackage(1), pbuilder(1), cowbuilder(1) e sbuild(1) diretamente. No entanto, as predefinições para estas ferramentas podem deixa-lo com algo que o dgit irá recusar enviar porque não vai corresponder ao seu CABEÇALHO git.

Como regra geral, deixe tudo assinalado e etiquetado para o dgit.

ENVIAR

Don't use --git-tag: git-debpush or dgit push-built will do this for you. To do a source-only upload:

    % git debpush

If git-debpush says that it can't determine a quilt mode, pass --gbp; this will be required at most once. See git-debpush(1).

If you need to include binaries,

    % dgit --gbp push-built

Isto vai empurrar o seu histórico git para o repositório dgit, mas você provavelmente quer continuar com um envio para salsa.

Você vai precisar passar --trust-changelog se o envio anterior não foi efetuado com o dgit.

Se este é o primeiro envio do dgit do pacote para esta suite, considere passar --deliberately-not-fast-forward em vez de --trust-changelog. Isto evita introduzir um novo cometer de origem na vista do dgit do seu histórico git. (Este cometer de origem iria representar o envio não-dgit mais recente do pacote, mas isto já deve estar representado no seu histórico git.)

INCORPORAR NMUS

O dgit pull ainda não pode incorporar NMUs em ramos gbp de patches-não-aplicadas. Você pode apenas aplicar o diff NMU da maneira tradicional. O próximo envio vai requerer --trust-changelog.

VEJA TAMBÉM

dgit(1), dgit(7)

AUTOR

Este tutorial foi escrito e é mantido por Sean Whitton <spwhitton@spwhitton.name>.

dgit+tag2upload team Debian Project