Date: prev next · Thread: first prev next last
2015 Archives by date, by thread · List index


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


Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.