abhinav / abhinav/git-spice

Native GitHub stacks support

Aberta
#1,388 1 comentário 40 reações 1 responsável Reivindicada por @abhinav Ver no GitHub
area/forge enhancement
Linguagem predominante
Go
Estrelas
762
Forks
72
Merge médio
18h 24min
PRs com merge (30d)
28

Descrição

https://docs.github.com/en/pull-requests/how-tos/stacked-pull-requests is public.
There are APIs that we can take advantage of.

From a quick read: stacks must be "created", and PRs must be added to them.
Stacks are only allowed to be linear, i.e. A -> B -> C, and A -> B -> D cannot coexist.

Immediate thoughts:

- `submit` operations will want to auto-manage stack resources. When a stack is linear, auto-add to stack.
When a stack becomes non-linear, choose the longest path to keep stacked per GitHub,
If there is ambiguity (multiple equally long paths), tie-break using some deterministic criteria (earliest PR number?).
- at `merge` time, if a run of branches is part of the same stack, merge them atomically with GitHub
- `merge` may want to unconditionally switch to GitHub's async merge API going forward

Guia de contribuição

Abrir o guia de contribuição

Avaliação

Esta issue ainda não foi avaliada.

Receba novas issues na sua caixa de entrada

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