2014-06-27 7 views

risposta

19

@Uncletall metti tutti i passaggi lì e il link, l'unica cosa è che non si dovrebbe cancellare il changeId e si dovrebbe fare un commit git --amend. Gli sto dando un +1.

Dovrebbe essere come questo

  1. Su Gerrit, andare al riesame, selezionare "checkout", sul campo Scarica in contrapposizione a "tirare", "cherry-pick", o "patch" , quindi copia il comando.

  2. Sul progetto git incollare il link copiato dall'alto

    Questo creerà una testa staccata, che è un ramo senza nome (sono stato attraverso il deserto su un cavallo senza nome, si sentiva buono per essere fuori dalla pioggia.)

  3. Nome quel cavallo! git checkout -b new_branch_name

  4. Cambia quello che vuoi e fai un git add sui file che vuoi.

  5. Do git commit --amend e conservare lo stesso Change-Id.

  6. Spingere le modifiche:

    git push origin <new_branch_name>:refs/for/<thatgerritbranchyouwanttochange>

+1

Penso che tu intenda 'git checkout -b '. Inoltre ho dovuto modificare le informazioni dell'autore prima della spinta poiché la patch precedente è stata creata da qualcun altro: 'git commit --amend --author" me stesso <[email protected]> "' – Gareth

+0

perché non usare 'HEAD' invece di creare un nuovo ramo locale che non valga nulla (gerrit purtroppo mantiene solo un singolo commit per modifica in qualsiasi modo) – erikbwork

3

Consultare Trying out a Change nella documentazione ufficiale.

Ecco cosa dovete fare:

  1. Acquista il cambiamento come descritto nella documentazione
  2. Creare un ramo locale dal FETCH_HEAD
  3. Modificare il codice
  4. confermare la modifica utilizzando git --amend e rimuovere il Change-Id nel messaggio di commit
  5. Un nuovo Change-Id verrà aggiunto automaticamente e ciò comporterà un nuovo Set di modifiche
  6. spingere il cambiamento per la revisione e Gerrit lo vedrà come un nuovo cambio di set

Come sottolineato da @ magnus-indietro, io descrivevo come creare una nuova Change-Set. Se si desidera aggiungere un nuovo set di patch alla revisione corrente, è necessario NON rimuovere lo Change-Id.

+0

Questo creerà una nuova _change_, ma penso che quello che viene chiesto è di essere al tavolo crea un nuovo set di patch _sulla modifica originale_. La rimozione della voce "rimuovi la riga di modifica dell'ID" dall'elenco riportato sopra risolverà questo problema. Si potrebbe anche dire che si presume che una linea di Change-Id sia presente nel messaggio di commit originale. Se non lo è, https://gerrit-review.googlesource.com/Documentation/user-upload.html#push_replace descrive cosa fare. –

3

basta seguire le istruzioni riportate di seguito:

  1. cherry-pick il cerotto (da Gerrit UI) alla vostra macchina.
  2. Modificare il contenuto ed eseguire git add <modified file>.
  3. Modificare l'ultimo commit utilizzando git commit --amend che si apre in una finestra COMMIT-EDITMGS. Salvalo di conseguenza.
  4. spingere il cambiamento di Gerrit utilizzando git push origin HEAD:refs/for/branch_name

    Si creerà una nuova serie di patch.

Problemi correlati