Отправить новый / исправленный код в существующую ветвь Gerrit после проверки - PullRequest
2 голосов
/ 29 марта 2011

Как мне отправить новый 'Patch Set' в существующую ветвь Gerrit, которая была рассмотрена?Когда я захожу на сайт обзора, мне предоставляется возможность скопировать команды checkout / pull / cherry-pick и patch.

Я попробовал команду checkout, чтобы получить код в моей локальной рабочей области:

git fetch http://website/project refs/changes/##/####/# && git checkout FETCH_HEAD
git checkout -b my_new_branch

Затем я внес изменения в файлы, затем добавил локальные файлы в ветку, выполнив команду

git add <filename>

, чтобы теперь отправить их обратно в хранилище. Я подумал, что мне нужно сделать

repo commit -m "message"
repo upload <projectname>

но мне говорили, что у меня нет ветки !!Итак, я попробовал

repo start <branch name> <project name>

, и это очистило мои изменения .... обратно в точку А ... каков ПРАВИЛЬНЫЙ порядок команд здесь :) Извините, ребята, я все еще пытаюсь обернуть моивозглавьте всю эту систему мерзавцев!Blaaah ... SVN пользователь здесь:)

1 Ответ

7 голосов
/ 07 октября 2011

Мы используем gerrit без репо, поэтому я бы предложил изменить существующий патч после проверки:

Оформить изменения (оформить -b необязательно, но рекомендуется)

# From gerrit web, button "Download->Checkout"
git fetch http://website/project refs/changes/##/####/# && git checkout FETCH_HEAD

# This is a good moment to create a local branch, just in case...
git checkout -b my_new_branch

Исправить вещи, исправить коммит и нажать для обзора.Git даст вам возможность отредактировать сообщение, не забудьте сохранить идентификатор изменения или добавить его, если у вас нет хука

git add <filename>
git commit --amend
git push http://website/project HEAD:refs/for/<branch_name>

Вы можете получитьимя ветви и идентификатор изменения из существующего изменения в веб-интерфейсе gerrit.

Дополнительная информация: Gerrit Загрузка изменений

...