Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Delta Between Two Patch Sets: patchconv/README.md

Issue 29524903: Noissue - Add helper script to import changes from Rietveld reviews (Closed)
Left Patch Set: Make rapply.sh commit the changes and work without installing patchconv.py Created Aug. 25, 2017, 3:47 p.m.
Right Patch Set: Revert the committing logic and simplify patchconv discovery Created Aug. 25, 2017, 6:50 p.m.
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
Left: Side by side diff | Download
Right: Side by side diff | Download
« no previous file with change/comment | « no previous file | patchconv/rapply.sh » ('j') | no next file with change/comment »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
LEFTRIGHT
1 # Convert Rietveld patches to apply them locally 1 # Convert Rietveld patches to apply them locally
2 2
3 The `patchconv` module and `patchconv` script convert SVN-style patches that 3 The `patchconv` module and `patchconv` script convert SVN-style patches that
4 are downloaded from [Rietveld](https://github.com/rietveld-codereview/rietveld) 4 are downloaded from [Rietveld](https://github.com/rietveld-codereview/rietveld)
5 code reviews to Git-style patches that can be used as input for `hg import` or 5 code reviews to Git-style patches that can be used as input for `hg import` or
6 `git apply`. 6 `git apply`.
7 7
8 In many cases the patches from the review can be applied directly with 8 In many cases the patches from the review can be applied directly with
9 `patch -p1`. However, if the changes contain copies or renames or include 9 `patch -p1`. However, if the changes contain copies or renames or include
10 binary files, `patch` will not apply them correctly. Git and Mercurial commands 10 binary files, `patch` will not apply them correctly. Git and Mercurial commands
11 will also not work because when the changes are uploaded to the review, they 11 will also not work because when the changes are uploaded to the review, they
12 are converted to SVN-like format that Rietveld normally works with. `patchconv` 12 are converted to SVN-like format that Rietveld normally works with. `patchconv`
13 undoes this conversion and returns the patch to the state where it can be 13 undoes this conversion and returns the patch to the state where it can be
14 applied using Git or Mercurial. 14 applied using Git or Mercurial.
15 15
16 ## Installation 16 ## Installation
17 17
18 Install directly from Mercurial repository using pip: 18 Install directly from Mercurial repository using pip:
19 19
20 $ pip install 'hg+https://hg.adblockplus.org/codingtools#egg=patchconv&subdi rectory=patchconv' 20 $ pip install 'hg+https://hg.adblockplus.org/codingtools#egg=patchconv&subdi rectory=patchconv'
21 21
22 ## Usage 22 ## Usage
23 23
24 The script in the package will be available immediately after the installation. 24 The script in the package will be available immediately after the installation.
25 Its interface is simple: it reads from stdin and writes to stdout. 25 Its interface is simple: it reads from stdin and writes to stdout.
26 26
27 $ patchconv <patch-from-rietveld.diff >git-patch.diff 27 $ patchconv <patch-from-rietveld.diff >git-patch.diff
28 28
29 For additional convenience you can use the provided `rapply.sh` script that 29 For additional convenience you can use the provided `rapply.sh` script that
30 downloads, converts and commits patches from Rietveld reviews to your local 30 downloads, converts and applies patches from Rietveld reviews to your local
31 repository. In order to use it, open a review, copy the URL of a `[raw]` 31 working copy. In order to use it, open a review, copy the URL of a `[raw]`
32 download link in the top right corner of a patch set overview and then paste it 32 download link in the top right corner of a patch set overview and then paste it
33 into the console: 33 into the console:
34 34
35 $ rapply.sh https://codereview.adblockplus.org/download/issue3322_4433.diff 35 $ rapply.sh https://codereview.adblockplus.org/download/issue3322_4433.diff
36 36
37 or, if you've already downloaded the diff to a local file: 37 or, if you've already downloaded the diff to a local file:
38 38
39 $ rapply.sh issue3322_4433.diff 39 $ rapply.sh issue3322_4433.diff
40 40
41 In both cases you need to be in the directory containing the repository to 41 In both cases you need to be in the directory containing the repository to
42 which you are applying the diff. 42 which you are applying the diff.
43 43
44 ## Testing 44 ## Testing
45 45
46 The tests can be run via [Tox](http://tox.readthedocs.org/) 46 The tests can be run via [Tox](http://tox.readthedocs.org/)
LEFTRIGHT

Powered by Google App Engine
This is Rietveld