Page MenuHomeFreeBSD

D59164.id.diff
No OneTemporary

D59164.id.diff

diff --git a/tools/tools/git/git-arc.1 b/tools/tools/git/git-arc.1
--- a/tools/tools/git/git-arc.1
+++ b/tools/tools/git/git-arc.1
@@ -48,6 +48,9 @@
.Op Fl bcrs
.Ar diff1 Op Cm Ar diff2 Op Ar ...
.Nm
+.Cm resolve
+.Ar diff1
+.Nm
.Cm stage
.Op Fl b Ar branch
.Ar commit-ref Op Ar commit-ref ...
@@ -167,6 +170,13 @@
This can be used to apply patch stacks by specifying the top-most, i.e.,
most recent commit in the stack.
.El
+.It Cm resolve
+Commit the currently checked-out tree using the commit
+message and the author taken from the Differental Revision.
+.Pp
+Used to commit the revision that failed to apply when using
+.Sy git arc patch
+after the conflicts has been resolved.
.It Cm stage
Prepare a series of commits to be pushed to the upstream
.Fx
@@ -325,6 +335,15 @@
$ git arc patch -c D23456
.Ed
.Pp
+Try to the patch in review D59155 to the currently checked-out tree,
+fix the conflicts and commit it to the tree with the commit message
+in the review.
+.Bd -literal -offset indent
+$ git arc patch -c D59155
+# fix the conflict
+$ git arc resolve D59155
+.Ed
+.Pp
List the status of reviews for all the commits in the branch
.Dq feature :
.Bd -literal -offset indent
diff --git a/tools/tools/git/git-arc.sh b/tools/tools/git/git-arc.sh
--- a/tools/tools/git/git-arc.sh
+++ b/tools/tools/git/git-arc.sh
@@ -62,6 +62,7 @@
diff <commit>|<commit range>
list <commit>|<commit range>
patch [-bcrs] <diff1> [<diff2> ...]
+ resolve <diff1>
stage [-b branch] [<commit>|<commit range>]
update [-l] [-m message] [<commit>|<commit range>]
@@ -773,6 +774,14 @@
done
}
+gitarc__resolve()
+{
+ if [ $# -ne 1 ]; then
+ err_usage
+ fi
+ patch_commit "$1"
+}
+
gitarc__stage()
{
local author branch commit commits diff reviewers title tmp
@@ -913,7 +922,7 @@
fi
case "$1" in
-create|diff|list|patch|stage|update)
+create|diff|list|patch|resolve|stage|update)
;;
*)
err_usage
@@ -945,10 +954,10 @@
PAGER=$GIT_PAGER
fi
-# Bail if the working tree is unclean, except for "diff", "list" and
-# "patch" operations.
+# Bail if the working tree is unclean, except for "diff", "list",
+# "patch" and "resolve" operations.
case $verb in
-diff|list|patch)
+diff|list|patch|resolve)
;;
*)
require_clean_work_tree "$verb"

File Metadata

Mime Type
text/plain
Expires
Fri, Sep 4, 9:45 AM (14 h, 42 s)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
37598098
Default Alt Text
D59164.id.diff (2 KB)

Event Timeline