README - The git-gerrit script is a Git extension to implement a Gerrit workflow. =head1 DESCRIPTION Git-gerrit is a Git extension to manage changes using L. Git-gerrit offers a rich set of sub-commands to make it easy to create, query, amend, review, and submit changes to Gerrit, making it possible to interact with it through the command-line, avoiding its web interface most of the time and improving your efficiency. The goal is to make Gerrit's review process feel like a natural extension of Git. Git-gerrit was originally inspired by the L script, which is used by some very well-known projects, such as OpenStack, MediaWiki, and LibreOffice. It also draws from other scripts such as L and L. However, while those scripts are based on Gerrit's old SSH API, git-gerrit is based on Gerrit's new REST API, taking advantage of its richer functionality. For the complete documentation, installation, and configuration instructions, please, read the L script documentation. =head1 TODO An incomplete list of things to do in random order: =over =item * Test, test, test, ... =item * checkout CHANGE.patchsetNumber Allow for the checkout of a specific patchset of a change. =item * implement 'git gerrit diff' To show diffs between patchsets. A la git-review -m. =item * implement the '--dry-run' option To avoid running non-query commands. =item * implement 'git gerrit log' =item * implement extensibility by plugins An example of a useful plugin would be to integrate change management with JIRA or other ticketing systems. Something like L. Another one would be to invite reviewers based on the history of the files/lines touched by the change. =item * support named-queries via git-gerrit.query configuration. This idea comes from L shortcuts. =item * implement 'git gerrit checkout topic' To checkout one or more changes associated with a Gerrit topic. =item * 'git gerrit review --verbose' This should work like 'git commit --verbose' so that the diff should be inserted in the temporary file created to invoke Git's editor. This way the user would be able to better study the change while he's composing a review message. =item * implement inline comments With 'git gerrit review --verbose' it should be possible to allow the user to insert comments below the diff lines. These comments would be recorded as draft comments associated with files or lines. This would be really cool. =item * implement 'git gerrit prune' To remove stale change-branches, a la git-repo. =item * show change comments in 'git gerrit show --verbose' =item * show current change-set id in 'git gerrit show' =item * reformat dates on 'git gerrit query' Perhaps, showing them as deltas since last change, a la what Gerrit does on its web interface. =item * Allow a list of changes as arguments for most commands =item * Provide global options to overide remote =back =head1 COPYRIGHT Copyright (c) 2013 by L. This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.