У меня проблема, когда я вишу, возьмите фиксацию из gerrit, внесите изменения и т. Д. И я хочу вернуть их с помощью -amend для моего фиксации до этого cherrypick, как я могу это сделать? Прямо сейчас я просто добавьте -A все файлы, но я понятия не имею, что делать дальшеGerrit cherry pick
ответ
Внесение изменений возможно только для последней фиксации. Предположим, что вы совершаете фиксацию для исправления (имеет код SHA-1) 111
. Вы можете увидеть реальный код SHA-1 вашего фиксации в git log
.
Вы можете использовать git reset --hard
, чтобы указать местную ветку на фиксацию, которую вы хотите изменить. Обратите внимание, что с «простым» git без Gerrit это будет очень плохой идеей, поскольку вы переписываете историю, изменяя уже нажатую фиксацию!
Я предполагаю, что у вас уже есть локальные, незафиксированные изменения в некоторых файлах, и вы хотите применить эти изменения к фиксации 111
. Вы должны занести эти изменения, потому что git reset --hard
will remove them and it couldn't be undone.
Таким образом, вы должны сделать (заменить master
с именем филиала вы находитесь):
git stash save
git reset --hard 111
git stash apply
<do some more changes to commit 111 if needed>
git commit --amend
git push gerrit master:refs/for/master
И вуаля - ваша фиксация 111 была изменена и обновлена с Геррит.
Существует еще один способ сделать это: вы можете использовать git rebase --interactive
, но в этом случае я нахожу его более сложным, чем git reset
.
Большое вам спасибо, это именно то, что я искал – user3274539
Геррит документооборота в вашем случае:
- Fetch переход от Геррит, используя URL из обзора страница
- Внесение изменений
- Добавить изменения в индекс с
git add -A .
- Изменить предыдущий коммит
git commit --amend
- Нажмите поправки фиксации назад к Герриту
git push gerrit master:refs/for/master
(заменитеmaster
с вашими и именами удаленных филиалов)
Я сделал некоторые изменения, и я сделал cherryPicked другой фиксации, сделал другие изменения, и теперь я хочу, чтобы они были нажаты на первый коммит прямо перед моим cherrypick, теперь, когда я делаю поправку Im на том, что вишня выбрала команду, к сожалению, – user3274539
вы может сделать это с помощью интерактивной rebase ('git rebase -i HEAD ~ 3'). Затем замените 'pick' на' e' перед фиксацией, которую вы хотите изменить. После того, как вы закончили с изменением, выполните «git rebase -continue», чтобы завершить операцию. –
Я рекомендую использовать checkout вместо вишни выбрать изменение/набор патчи от Геррита. Проверка whit не зависит от фиксации. В вашем случае внесение изменений в последнюю модификацию повлияет на последнюю фиксацию, которая является вишневым подборкой - это нормально. Но если вы хотите изменить изменения на 1. commit, тогда просто сначала удалите значок вишни.
- 1. gerrit cherry pick link отсутствует в gerrit web
- 2. Cherry-pick проваливается через интерфейс Gerrit UI, но успешно проходит через локальный git-cherry-pick
- 3. Как построить URL-адрес Cherry Pick в gerrit 2.11
- 4. Git Cherry-Pick
- 5. Напротив git cherry-pick?
- 6. Повторяющийся git cherry-pick
- 7. Cherry pick using TortoiseGit
- 8. понимание git cherry-pick
- 9. Отменить git cherry-pick?
- 10. Cherry-pick a merge
- 11. Git Cherry Pick грязного индекса
- 12. weird git cherry-pick поведение
- 13. git cherry-pick SHA1 ID
- 14. Гит Rebase после Cherry-Pick
- 15. Cherry pick from local source
- 16. Git Cherry-Pick and Conflicts
- 17. Cherry-pick not mark merge
- 18. «Cherry-pick» в приложении Github для Mac
- 19. git cherry-pick -continue, '-no-edit' опция?
- 20. git cherry-pick и игнорирование типа eol
- 21. Как отменить успешный «git cherry-pick»?
- 22. Git cherry-pick and sha-1 value
- 23. git cherry-pick с целевым файлом переименован
- 24. Breeze js cherry pick saves issue
- 25. 'Fatal: cherry-pick failed' with Git
- 26. git cherry-pick без выборки удаленной ветви
- 27. Проблемы с перезагрузкой git cherry-pick
- 28. Cherry-pick a pull запрос в ветку?
- 29. Что эквивалентно в TFVC git cherry-pick
- 30. Почему git cherry-pick не продолжается?
Действительно ли вы имеете в виду просмотр/изменение вместо «совершить с геррита» и выборки/проверки вместо вишневого выбора? –
сборник вишни - это патч-набор от Gerrit? – HiB