libgit2 / libgit2/pygit2

Walker?

Aberta
#1,055 1 comentário 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Linguagem predominante
Python
Estrelas
1.7k
Forks
408
Merge médio
2d 57min
PRs com merge (30d)
7

Descrição

https://www.pygit2.org/commit_log.html describes a Walker object, but does not explain how to get one or how to use it. Are we to infer that the the iterator produced by the call to Repository.walk() immediately above is an object of type Walker? When I debug that seems to be the case.

For example, if heads is a list of heads and w a Walker, will

for h in heads:
    w.push(h)
    for cmt in w:
        do_stuff(cmt)

call do_stuff exactly once (i.e., the walker remembers and ignores commits already visited on later calls) for each commit in my repository that is reachable from any head?

Guia de contribuição

Abrir o guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Direção de pesquisa

Comece pela documentação de commit_log em https://www.pygit2.org/commit_log.html e pela descrição de Repository.walk(). Esclareça como um Walker é obtido e usado, incluindo se a iteração mantém os commits visitados entre chamadas repetidas a push. Está concluído quando a página explica o comportamento do exemplo sem exigir que os leitores o deduzam.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
git, python
Domínio
documentation
Tipo de issue
Documentação
Dificuldade
2/5
Tempo estimado
1-3 horas
Status de atividade
Estagnada
Clareza
Razoavelmente clara
Facilidade para iniciantes
35/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.