GitHub API v3: welke SHA-basis SHAR-waarden worden geaccepteerd bij het schrijven van een stamboom

Wanneer een boom leest met behulp van de github api :

GET /repos/:user/:repo/git/trees/:sha

je kunt passeren

  1. De SHA van een commit, in welk geval het automatisch lijkt op te lossen naar de tree in de commit, en mogelijk een round trip bespaart om de tree SHA van de commit te halen.
  2. Of geef gewoon de SHA van de boom door

Ik vroeg me af of je ook de SHA van de commit voor base_tree kunt doorgeven als je de "Create a Tree" API aanroept?

POST /repos/:user/:repo/git/trees
1

1 antwoord

Het lijkt probleemloos te werken.

De manier waarop ik het testte was:

  1. KRIJG de commit sha van "refs/heads/master" (geeft old_commit_sha )
  2. POST een nieuwe boom met old_commit_sha als de basisboom en een nieuw of bijgewerkt bestand (geeft new_tree_sha )
  3. POST een nieuwe commit met de new_tree_sha als de tree en old_commit_sha als de parent (geeft new_commit_sha )
  4. POST een nieuwe "refs/heads/master" (zet dit op new_commit_sha )

Ik heb toen geverifieerd dat alles op Github zelf klopte ... en dat deed het.

Dit bespaart slechts één stap bij het toevoegen of bijwerken van een bestand in een repository, maar kan nuttig zijn voor iemand.

2
toegevoegd
Oh ... Je hebt me ... Wat is de beste manier om meerdere niveaus bij te werken?
toegevoegd de auteur Raja Simon, de bron