Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F155001320
D56664.id176660.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
2 KB
Referenced Files
None
Subscribers
None
D56664.id176660.diff
View Options
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
@@ -24,7 +24,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.Dd February 10, 2026
+.Dd April 27, 2026
.Dt GIT-ARC 1
.Os
.Sh NAME
@@ -33,7 +33,7 @@
.Sh SYNOPSIS
.Nm
.Cm create
-.Op Fl l
+.Op Fl dl
.Op Fl r Ar reviewer1 Ns Op Cm \&, Ns Ar reviewer2 ...
.Op Fl s Ar subscriber1 Ns Op Cm \&, Ns Ar subscriber2 ...
.Op Fl p Ar parent
@@ -95,6 +95,12 @@
Create new Differential Revisions from the specified commits.
Accepts options:
.Bl -tag -width "-s subscriber"
+.It Fl d
+Create the diff as a draft.
+In this mode, notifications are not sent to reviewers and subscribers
+until the review is published via the web UI.
+The draft is still visible to anyone with the URL (or able to guess it),
+but the review's visibility settings can be modified before publishing.
.It Fl l
Before processing commit(s) display list of commits to be processed
and wait for confirmation.
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
@@ -234,7 +234,7 @@
create_one_review()
{
- local childphid commit doprompt msg parent parentphid reviewers
+ local childphid commit doprompt draft msg parent parentphid reviewers
local subscribers
commit=$1
@@ -242,11 +242,18 @@
subscribers=$3
parent=$4
doprompt=$5
+ draft=$6
if [ "$doprompt" ] && ! show_and_prompt "$commit"; then
return 1
fi
+ if [ "$draft" -eq 1 ]; then
+ draft=--draft
+ else
+ unset draft
+ fi
+
msg=$(xmktemp)
git show -s --format='%B' "$commit" > "$msg"
printf "\nTest Plan:\n" >> "$msg"
@@ -257,7 +264,7 @@
yes | EDITOR=true \
arc diff --message-file "$msg" --never-apply-patches --create \
- --allow-untracked $BROWSE --head "$commit" "${commit}~"
+ --allow-untracked $draft $BROWSE --head "$commit" "${commit}~"
[ $? -eq 0 ] || err "could not create Phabricator diff"
if [ -n "$parent" ]; then
@@ -351,7 +358,7 @@
gitarc__create()
{
- local commit commits doprompt list o prev reviewers subscribers
+ local commit commits doprompt draft list o prev reviewers subscribers
list=
prev=""
@@ -359,8 +366,12 @@
list=1
fi
doprompt=1
- while getopts lp:r:s: o; do
+ draft=0
+ while getopts dlp:r:s: o; do
case "$o" in
+ d)
+ draft=1
+ ;;
l)
list=1
;;
@@ -394,7 +405,7 @@
for commit in ${commits}; do
if create_one_review "$commit" "$reviewers" "$subscribers" "$prev" \
- "$doprompt"; then
+ "$doprompt" "$draft"; then
prev=$(commit2diff "$commit")
else
prev=""
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Fri, May 1, 2:47 PM (19 h, 20 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
32581690
Default Alt Text
D56664.id176660.diff (2 KB)
Attached To
Mode
D56664: git-arc: Add a draft mode
Attached
Detach File
Event Timeline
Log In to Comment