Hi jan, On Monday, 2015-11-09 10:00:01 -0700, jan iversen wrote:
Sometimes I have to correct an older patch set, I do the following in core: git pull <cherry pick gerrit patch set> make changes ./logerrit ... Then in order to cleanup I do git reset head~ git checkout files from changeset This does not seem optimal, any suggestion on how to effectively work with different changesets fast ?
Use git-review ;-) https://wiki.documentfoundation.org/Development/GitReview (that page btw seems a bit outdated regarding installation, git-review should be available now with all(?) distros, and the page should not focus on git-review development but usage in our gerrit process instead) Instead of git-review you can also use ./logerrit to create a branch and cherry-pick the gerrit change and submit an amended commit for that change and clean the temporary branch, but git-review does all that for you. Plus, which I regard as a big bonus, it warns about multiple commits that are about to be pushed to gerrit, whereas ./logerrit silently pushes them all. So, basically # download changenumber and apply on a temporary branch named after # submitter and changenumber (changenumber is the currently 5 digits # gerrit change, not the Change-Id): git review <changenumber> # do your changes git commit --amend ... git review -R -f # -R skips rebasing change (may be desired when amending a change, see # git review --help), then pushes to gerrit, and -f finishes the # temporary branch, switching back to your branch and removing the # temporary branch You can also use git review -x <changenumber> to just cherry-pick onto your current branch without creating a named branch, e.g. if your master isn't ahead of origin/master and a git review would not result in multiple changes to be pushed, and after submitting to gerrit do git reset --hard HEAD^ Otherwise a separate branch is of advantage. Btw, git reset HEAD^ (without --hard) probably is not what you want (actually it is the same as git reset --mixed HEAD^ ), it just undoes the commit and preserves the modified files, so you could git add and include them in your next commit.. Eike -- LibreOffice Calc developer. Number formatter stricken i18n transpositionizer. GPG key "ID" 0x65632D3A - 2265 D7F3 A7B0 95CC 3918 630B 6A6C D5B7 6563 2D3A Better use 64-bit 0x6A6CD5B765632D3A here is why: https://evil32.com/ Care about Free Software, support the FSFE https://fsfe.org/support/?erack
Attachment:
signature.asc
Description: PGP signature