In the arc diff --preview workflow in the "Update Differential Revision" dialog It would be great to have the changes between the most recent diff on the chosen revision and the diff being uploaded. That would help a lot with filling in the "Comments" field. Currently, to figure out these incremental changes, one has to do a git diff between the previously uploaded branch (which might not even be there anymore with the "git commit --amend" workflow) and the branch with the diff currently being uploaded.
Description
Description
Related Objects
Related Objects
- Mentioned Here
- P1732 arc_preview
- Duplicates Merged Here
- T12638: Arcanist (svn): add ability to output diff against last differential update
Event Timeline
Comment Actions
This seems pretty reasonable -- this workflow could use a UI refresh anyway (I'd like to show Dxx numbers in that "attach to.." dropdown, for example).
epriestley added subscribers: durham, Unknown Object (MLST).Sep 4 2013, 3:10 PM2013-09-04 15:10:06 (UTC+0)
Comment Actions◀ Merged tasks: T3791.
epriestley moved this task from Backlog to v2 (UI/Mobile) on the Differential board.Mar 4 2015, 5:18 PM2015-03-04 17:18:13 (UTC+0)
Comment Actions
FWIW, been using the following script to do these previews for an svn repo
1 | #!/bin/bash |
---|---|
2 | |
3 | set -e |
4 | |
5 | usage () |
6 | { |
7 | echo "Usage: arc_preview [ -d Diff ID ]" |
8 | echo "" |
9 | echo "Will detect your local arc Diff ID and your local svn repo" |
10 | echo "to provide a diff of what has changed. This semantically" |
11 | echo "should tell you what has changed since your last 'arc diff'." |
12 | echo "If -d is provided, it will be used as the Diff ID rather than" |
13 | echo "detecting and using your most recent diff." |
14 | exit 1 |
15 | } |
16 | |
17 | diff="" |
18 | while getopts ":d:" opt; do |
19 | case "$opt" in |
20 | d) diff=$OPTARG |
21 | ;; |
22 | *) |
23 | usage |
24 | ;; |
25 | esac |
26 | done |
27 | |
28 | if [ -z "$diff" ]; |
29 | then |
30 | diff=`arc which | grep -o "D[1-9][0-9]*"` |
31 | fi |
32 | base_checkout=`svn info | grep ^URL | cut -d" " -f2` |
33 | |
34 | if [ -z "$diff" ]; |
35 | then |
36 | echo "Unable to find diff for working directory" |
37 | exit |
38 | fi |
39 | |
40 | if [ -z "$base_checkout" ]; |
41 | then |
42 | echo "Unable to find svninfo for working directory" |
43 | exit |
44 | fi |
45 | |
46 | echo "Diff is $diff" |
47 | echo "Base Revision is $base_checkout" |
48 | |
49 | curr_dir=`pwd` |
50 | |
51 | ## start with a fresh tmp dir |
52 | tmp_dir=`mktemp -d` |
53 | |
54 | function cleanup { |
55 | rm -rf $tmp_dir |
56 | } |
57 | |
58 | trap 'cleanup' EXIT |
59 | |
60 | ## checkout the base revision and apply the patch |
61 | svn co $base_checkout $tmp_dir --quiet |
62 | cd $tmp_dir |
63 | |
64 | ## patch it up and hide some noise |
65 | arc patch --force ${diff} | grep -v "^patching file" | |
66 | grep -v "^[A|U|D] " |
67 | |
68 | cd $curr_dir |
69 | |
70 | ## perform our diff |
71 | diff -ru $tmp_dir $curr_dir --exclude=".svn" |
chad changed the visibility from "All Users" to "Public (No Login Required)".Jul 3 2015, 4:40 AM2015-07-03 04:40:54 (UTC+0)
Herald added a subscriber: eadler. · View Herald TranscriptMay 26 2016, 9:58 AM2016-05-26 09:58:56 (UTC+0)
eadler moved this task from Restricted Project Column to Restricted Project Column on the Restricted Project board.Jun 17 2016, 7:09 AM2016-06-17 07:09:24 (UTC+0)
eadler moved this task from Restricted Project Column to Restricted Project Column on the Restricted Project board.Jul 4 2016, 9:19 PM2016-07-04 21:19:52 (UTC+0)
epriestley claimed this task.
Comment ActionsThis is five years old, and doesn't meet the requirements of a modern feature request. If you're still interested in this, feel free to start a new discussion on Discourse.