table of contents
- trixie-backports 13.13~bpo13+1
- testing 13.13
- unstable 13.14
dgit-maint-gbp(7) | dgit | dgit-maint-gbp(7) |
NOME¶
dgit - tutorial para maintainers de pacote que já usam git-buildpackage(1)
INTRODUÇÃO¶
Este documento explica como o dgit pode ser incorporado num fluxo de trabalho de manutenção de pacote do git-buildpackage(1). Isto deve ser lido juntamente com a documentação do git-buildpackage(1). Algumas razões para você querer incorporar o dgit no seu fluxo de trabalho existente:
- Beneficia das capturas de segurança do dgit. Em particular, assegura que o seu envio corresponde 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).
Se você está a fazer um envio apenas-fonte, você não precisa de preparar um _source.changes, pois o dgit push-source vai tratar disso por si.
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¶
Não use --git-tag: dgit push-source, dgit push-built, e dgit push vão fazer isto por si. Para fazer um envio apenas-fonte:
% dgit --gbp push-source
ou se você precisar de incluir binários.
% 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.)
Em alternativa, você pode usar git-debpush(1). Para o primeiro envio você deve passar a opção de modo quilt --gbp (veja git-debpush(1)).
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¶
AUTOR¶
Este tutorial foi escrito e é mantido por Sean Whitton <spwhitton@spwhitton.name>.
dgit+tag2upload team | Debian Project |