moin,

not even six years after the initial announcement, i have landed my git-gpush improvements and related tools to the qtrepotools repo.

note for early adopters (i heard that there are quite some of you at kdab): the command lines and metadata storage changed over the years.

the landing page https://wiki.qt.io/Git-gpush-scripts explains the major features, how to get started and perform advanced tasks, and counters frequent skepticism. excerpts:

=====================

The general idea of these scripts is to make working with Gerrit more transparent:

- You can keep many unrelated Changes on one local branch without creating spurious dependencies between them on Gerrit. While you can achieve the same by having a separate local branch for every series, having all Changes on a single branch is much more convenient. - You can pull as often as you want, including right before pushing, as you would usually do in a git pull --rebase based workflow. Without git-gpush, this would unnecessarily rebase previously pushed Changes, which would make Gerrit's inter-diff feature slower and much noisier.

You may have noticed that these major features are geared towards making not your life easier, but that of your reviewers. Until roles are switched, that is.

================

Getting Started
---------------

As usual, you should start with some solid RTFM: ;)

$ git-gpush -h
$ git-gpick -h
$ git-gpull -h
$ git-ggc -h

Get all your pending changes onto the current branch, in case you kept them on separate branches:

$ git cherry-pick <…>

Alternatively, you could merge all your local branches and then rebase.

If you have pending Changes for the given branch on Gerrit, you need to synchronize (bootstrap) the state:

$ git gpick --check --all

To get an idea about what gpush thinks you have in your branch:

$ git gpush --list

Group remaining loose Changes into series:

$ git gpush --group :3
$ git gpush --group ~3:5
<…>

Get a more thorough overview:

$ git gpush --list-online

Push out any modified Changes:

$ git gpush --all

===================

have fun!
_______________________________________________
Development mailing list
[email protected]
https://lists.qt-project.org/listinfo/development

Reply via email to