O que exatamente é uma solicitação de pull?

Isso é uma ramificação da minha pergunta anterior: Posso selecionar quem pode contribuir com meu projeto de código aberto?

Nunca tendo trabalhado com software de código aberto antes e desenvolvendo meus próprios mini-aplicativos que espero lançar na App Store algumas vezes neste verão, não estou familiarizado com a forma como a maioria do código aberto estruturas de desenvolvimento são configuradas (bifurcações, repositórios principais …).

Uma coisa que apareceu foi a menção de uma solicitação pull. O que exatamente é uma solicitação pull?

Resposta

O termo “solicitação pull” vem de git, onde git pull é usado para fundir um repositório diferente no seu local. Então, se outra pessoa tiver uma cópia do seu git repositório e fizer as alterações desejadas por você para incorporar, eles podem pedir que você pull as alterações de seu repositório; eles “re solicitando um pull, daí o termo” solicitação pull “.

Hoje em dia, para a maioria dos usuários, isso tende a ficar oculto atrás de uma interface gráfica de algum tipo, em Github ou Bitbucket ou via Gerrit por exemplo; mas o princípio permanece o mesmo: alguém copia seu repositório, faz alterações e solicita que sejam mescladas em sua própria cópia, provavelmente depois de “revisá-los.

Comentários

  • Git também tem um comando git request-pull . Isso produz uma mensagem escrita que você pode enviar para outra pessoa, convidando-os a usar git pull para incorporar seu trabalho em sua cópia do software.
  • Não pode ser explicado de forma mais clara para iniciantes.

Resposta

Se você tiver sistemas de controle de versão distribuída , cada desenvolvedor tem uma cópia do repositório completo. Se você alterar algo no software, você envia suas alterações para o repositório local. Se repositórios diferentes devem ter essas alterações, você pode enviar as alterações (movendo as alterações para outro repositório, você tem o direito para escrever) ou obter as alterações (copiar a revisão para m outros repositórios para o seu). Como muitos projetos têm um repositório principal, pull-request é a solicitação para que o mantenedor extraia suas alterações.

Lendo um pouco sobre ele , parece que o termo é usado também em controle de versão não distribuído, se um usuário solicitar a inclusão de seus patches no branch principal do projeto. Outra leitura especialmente para o github: https://help.github.com/articles/using-pull-requests/

Resposta

Uma solicitação pull está relacionada aos sistemas de controle de versão. Você pode ter vários conjuntos de usuários:

  • administradores / proprietários
  • colaboradores
  • testadores

você deseja cada uma dessas pessoas seja capaz de fazer coisas diferentes:

  • Administradores / proprietários
    Essas pessoas são confiáveis. Eles podem ter acesso total ao repositório em questão, incluindo direitos totais para enviar o que quiserem, quando quiserem.
  • Colaboradores
    Podem ser pessoas aleatórias da Internet; eles podem ser pessoas inferiores em uma empresa. De qualquer forma, você provavelmente não deseja que eles sejam capazes de se comprometer diretamente com a base de código – você deseja revisar suas alterações primeiro.

É aqui que entram as solicitações pull. Em vez de permitir mudanças diretas na base de código de seus contribuidores, eles irão, em vez disso, bifurcar o repositório, criando uma cópia em sua máquina local, e desenvolvê-la. Quando terminar, eles podem criar uma solicitação de pull contendo seus código. Alguém no grupo superior pode então revisar suas alterações quanto à exatidão e cumplicidade com os padrões e mesclar suas alterações se estiverem em conformidade.

Comentários

  • Um pouco fora do tópico, mas mesmo aquelas pessoas que podem mesclar diretamente suas próprias alterações devem enviar PRs para que seus colegas revisem. Supondo que você ' esteja trabalhando em uma equipe que está. Se você ' não estiver, acho que ' é o que CodeReview é para.
  • OK. Portanto, as etapas são: você bifurca o repositório principal, puxa-o para o seu PC, modifica-o, faz commit e empurra para o seu branch bifurcado e, em seguida, solicita ao administrador que extraia e mescle o seu branch bifurcado no principal?

Resposta

Uma solicitação pull (PR) é um método de envio de contribuições para um projeto de desenvolvimento aberto. Isso ocorre quando um desenvolvedor solicita alterações confirmadas em um repositório externo para serem consideradas para inclusão no repositório principal de um projeto após a revisão por pares.

Fonte: O que é uma solicitação pull? em OSS Watch

Exemplo simples é quando você clona / bifurca o repositório de código aberto, faz algumas alterações / commits e para mesclar as alterações no repositório principal, você deve enviar a solicitação pull que consiste em todos os seus commits agrupados em uma parte lógica para que possa ser revisado por outros desenvolvedores.

Isso tem alguns benefícios em relação aos commits e pushes padrão, pois você tem alguns olhos adicionais para verificar e evitar problemas comuns / ocultos / erros antes das mudanças reais.

Veja alguns exemplos de RP:

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *