EnglishFrenchSpanish

Ad


OnWorks favicon

arc - Online in the Cloud

Run arc in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command arc that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

PROGRAM:

NAME


arcanist - command-line interface to Phabricator

DESCRIPTION


NAME

arc - arcanist, a code review and revision management utility

SYNOPSIS

arc command [options] [args] This help file provides a detailed command reference.

COMMAND REFERENCE

alias alias command alias command target -- [options]

Supports: cli Create an alias from command to target (optionally, with options).
For example:

arc alias fpatch patch -- --force

...will create a new 'arc' command, 'arc fpatch', which invokes 'arc patch --force
...' when run. NOTE: use "--" before specifying options!

If you start an alias with "!", the remainder of the alias will be invoked as a
shell command. For example, if you want to implement 'arc ls', you can do so like
this:

arc alias ls '!ls'

You can now run "arc ls" and it will behave like "ls". Of course, this example is
silly and would make your life worse.

You can not overwrite builtins, including 'alias' itself. The builtin will always
execute, even if it was added after your alias.

To remove an alias, run:

arc alias fpatch

Without any arguments, 'arc alias' will list aliases.

amend [--revision revision_id] [--show]

Supports: git, hg Amend the working copy, synchronizing the local commit message
from Differential.

Supported in Mercurial 2.2 and newer.

--revision revision_id

Use the message from a specific revision. If you do not specify a revision, arc
will guess which revision is in the working copy.

--show

Show the amended commit message, without modifying the working copy.

anoid

There's only one way to find out...

backout

Reverts/backouts on a previous commit. Supports: git, hg

Command is used like this: arc backout <commithash> | <diff revision> Entering a
differential revision will only work if there is only one commit associated with
the revision. This requires your working copy is up to date and that the commit
exists in the working copy.

bookmark [options] bookmark name [start]

Supports: hg Alias for arc feature.

--by-status

Sort branches by status instead of time.

--output format

With 'json', show features in machine-readable JSON format.

--view-all

Include closed and abandoned revisions.

branch [options] branch name [start]

Supports: git Alias for arc feature.

--by-status

Sort branches by status instead of time.

--output format

With 'json', show features in machine-readable JSON format.

--view-all

Include closed and abandoned revisions.

browse [options] path ... browse [options] object ...

Supports: git, hg, svn Open a file or object (like a task or revision) in your web
browser.

$ arc browse README # Open a file in Diffusion.
$ arc browse T123 # View a task.
$ arc browse HEAD # View a symbolic commit.

Set the 'browser' value using 'arc set-config' to select a browser. If no browser
is set, the command will try to guess which browser to use.

--branch branch_name

Default branch name to view on server. Defaults to "master".

--force

Open arguments as paths, even if they do not exist in the working copy.

call-conduit method

Supports: http, https Allows you to make a raw Conduit method call:

- Run this command from a working directory. - Call parameters are REQUIRED and
read as a JSON blob from stdin. - Results are written to stdout as a JSON blob.

This workflow is primarily useful for writing scripts which integrate with
Phabricator. Examples:

$ echo '{}' | arc call-conduit conduit.ping
$ echo '{"phid":"PHID-FILE-xxxx"}' | arc call-conduit file.download

close task_id [options]

Close a task or otherwise update its status.

--list-statuses

Show available status options and exit.

--message comment, -m comment

Provide a comment with your status change.

--status status, -s status

Specify a new status. Valid status options can be seen with the `list-statuses`
argument.

close-revision [options] revision

Supports: git, hg, svn Close a revision which has been committed (svn) or pushed
(git, hg). You should not normally need to do this: arc commit (svn), arc amend
(git, hg), arc land (git, hg), or repository tracking on the master remote
repository should do it for you. However, if these mechanisms have failed for some
reason you can use this command to manually change a revision status from
"Accepted" to "Closed".

--finalize

Close only if the repository is untracked and the revision is accepted. Continue
even if the close can't happen. This is a soft version of '' used by other
workflows.

--quiet

Do not print a success message.

commit [--revision revision_id] [--show]

Supports: svn Commit a revision which has been accepted by a reviewer.

--revision revision_id

Commit a specific revision. If you do not specify a revision, arc will look for
committable revisions.

--show

Show the command which would be issued, but do not actually commit anything.

cover [--rev revision] [path ...]

Supports: svn, git, hg Cover your... professional reputation. Show blame for the
lines you changed in your working copy (svn) or since some commit (hg, git). This
will take a minute because blame takes a minute, especially under SVN.

--rev revision

Supports: git, hg Cover changes since a specific revision.

diff [paths] (svn) diff [commit] (git, hg)

Supports: git, svn, hg Generate a Differential diff or revision from local changes.

Under git and mercurial, you can specify a commit (like HEAD^^^ or master) and
Differential will generate a diff against the merge base of that commit and your
current working directory parent.

Under svn, you can choose to include only some of the modified files in the working
copy in the diff by specifying their paths. If you omit paths, all changes are
included in the diff.

--add-all, -a

Automatically add all unstaged and uncommitted files to the commit.

--advice

Require excuse for lint advice in addition to lint warnings and errors.

--allow-untracked

Skip checks for untracked files in the working copy.

--amend-all

When linting git repositories, amend HEAD with all patches suggested by lint
without prompting.

--amend-autofixes

When linting git repositories, amend HEAD with autofix patches suggested by lint
without prompting.

--apply-patches

Apply patches suggested by lint to the working copy without prompting.

--base rules

Supports: git, hg Additional rules for determining base revision.

--browse

After creating a diff or revision, open it in a web browser.

--cache bool

0 to disable lint cache, 1 to enable (default).

--cc usernames

When creating a revision, add CCs.

--coverage

Always enable coverage information.

--create

Always create a new revision.

--edit

Supports: git, hg When updating a revision under git, edit revision information
before updating.

--encoding encoding

Attempt to convert non UTF-8 hunks into specified encoding.

--excuse excuse

Provide a prepared in advance excuse for any lints/tests shall they fail.

--head commit

Supports: git Specify the end of the commit range. This disables many
Arcanist/Phabricator features which depend on having access to the working copy.

--ignore-unsound-tests

Ignore unsound test failures without prompting.

--json

Emit machine-readable JSON. EXPERIMENTAL! Probably does not work!

--less-context

Normally, files are diffed with full context: the entire file is sent to
Differential so reviewers can 'show more' and see it. If you are making changes to
very large files with tens of thousands of lines, this may not work well. With this
flag, a diff will be created that has only a few lines of context.

--lintall

Raise all lint warnings, not just those on lines you changed.

--message message, -m message

When updating a revision, use the specified message instead of prompting.

--message-file file, -F file

When creating a revision, read revision information from this file.

--never-apply-patches

Never apply patches suggested by lint.

--no-amend

Never amend commits in the working copy with lint patches.

--no-coverage

Always disable coverage information.

--no-diff

Only run lint and unit tests. Intended for internal use.

--nolint

Do not run lint.

--nounit

Do not run unit tests.

--only

Only generate a diff, without running lint, unit tests, or other auxiliary steps.
See also --preview.

--only-new bool

Display only lint messages not present in the original code.

--plan-changes

Create or update a revision without requesting a code review.

--preview

Instead of creating or updating a revision, only create a diff, which you may later
attach to a revision. This still runs lint unit tests. See also --only.

--raw

Read diff from stdin, not from the working copy. This disables many
Arcanist/Phabricator features which depend on having access to the working copy.

--raw-command command

Generate diff by executing a specified command, not from the working copy. This
disables many Arcanist/Phabricator features which depend on having access to the
working copy.

--reviewers usernames

When creating a revision, add reviewers.

--skip-binaries

Do not upload binaries (like images).

--skip-staging

Do not copy changes to the staging area.

--uncommitted

Supports: hg Suppress warning about uncommitted changes.

--update revision_id

Always update a specific revision.

--use-commit-message commit, -C commit

Supports: git Read revision information from a specific commit.

--verbatim

Supports: hg, git When creating a revision, try to use the working copy commit
message verbatim, without prompting to edit it. When updating a revision, update
some fields from the local commit message.

download file [--as name] [--show]

Supports: filesystems Download a file to local disk, e.g.:

$ arc download F33 # Download file 'F33'

--as name

Save the file with a specific name rather than the default.

--show

Write file to stdout instead of to disk.

export [paths] format (svn) export [commit_range] format (git, hg) export
--revision revision_id format export --diff diff_id format

Supports: svn, git, hg Export the local changeset (or a Differential changeset) to
a file, in some format: git diff (--git), unified diff (--unified), or arc bundle
(--arcbundle path) format.

--arcbundle file

Export change as an arc bundle. This format can represent all changes. These
bundles can be applied with 'arc patch'.

--diff diff_id

Instead of exporting changes from the working copy, export them from a Differential
diff.

--encoding encoding

Attempt to convert non UTF-8 patch into specified encoding.

--git

Export change as a git patch. This format is more complete than unified, but less
complete than arc bundles. These patches can be applied with 'git apply' or 'arc
patch'.

--revision revision_id

Instead of exporting changes from the working copy, export them from a Differential
revision.

--unified

Export change as a unified patch. This format is less complete than git patches or
arc bundles. These patches can be applied with 'patch' or 'arc patch'.

feature [options] feature name [start]

Supports: git, hg A wrapper on 'git branch' or 'hg bookmark'.

Without name, it lists the available branches and their revision status.

With name, it creates or checks out a branch. If the branch name doesn't exist and
is in format D123 then the branch of revision D123 is checked out. Use start to
specify where the new branch will start. Use 'arc.feature.start.default' to set the
default feature start location.

--by-status

Sort branches by status instead of time.

--output format

With 'json', show features in machine-readable JSON format.

--view-all

Include closed and abandoned revisions.

flag [object ...] flag object --clear flag object [--edit] [--color color] [--note
note]

In the first form, list objects you've flagged. You can provide the names of one or
more objects (Maniphest tasks T#, Differential revisions D#, Diffusion references
rXXX???, or PHIDs PHID-XXX-???) to print only flags for those objects.

In the second form, clear an existing flag on one object.

In the third form, create or update a flag on one object. Color defaults to blue
and note to empty, but if you omit both you must pass --edit.

--clear

Delete the flag on an object.

--color color

Set the color of a flag.

--edit

Edit the flag on an object.

--note note

Set the note on a flag.

get-config [options] -- [name ...]

Supports: cli Reads an arc configuration option. With no argument, reads all
options.

With --verbose, shows detailed information about one or more options.

--verbose

Show detailed information about options.

help [command] help --full

Supports: english Shows this help. With command, shows help about a specific
command.

--full

Print detailed information about each command.

install-certificate [uri]

Supports: http, https Installs Conduit credentials into your ~/.arcrc for the given
install of Phabricator. You need to do this before you can use 'arc', as it enables
'arc' to link your command-line activity with your account on the web. Run this
command from within a project directory to install that project's certificate, or
specify an explicit URI (like "https://phabricator.example.com/").

land [options] [ref]

Supports: git, hg

Publish an accepted revision after review. This command is the last step in the
standard Differential pre-publish code review workflow.

This command merges and pushes changes associated with an accepted revision that
are currently sitting in ref, which is usually the name of a local branch. Without
ref, the current working copy state will be used.

Under Git: branches, tags, and arbitrary commits (detached HEADs) may be landed.

Under Mercurial: branches and bookmarks may be landed, but only onto a target of
the same type. See T3855.

The workflow selects a target branch to land onto and a remote where the change
will be pushed to.

A target branch is selected by examining these sources in order:

- the --onto flag; - the upstream of the current branch, recursively (Git only); -
the arc.land.onto.default configuration setting; - or by falling back to a standard
default:

- "master" in Git; - "default" in Mercurial.

A remote is selected by examining these sources in order:

- the --remote flag; - the upstream of the current branch, recursively (Git only);
- or by falling back to a standard default:

- "origin" in Git; - the default remote in Mercurial.

After selecting a target branch and a remote, the commits which will be landed are
printed.

With --preview, execution stops here, before the change is merged.

The change is merged with the changes in the target branch, following these rules:

In repositories with mutable history or with --squash, this will perform a squash
merge (the entire branch will be represented as one commit after the merge).

In repositories with immutable history or with --merge, this will perform a strict
merge (a merge commit will always be created, and local commits will be preserved).

The resulting commit will be given an up-to-date commit message describing the
final state of the revision in Differential.

In Git, the merge occurs in a detached HEAD. The local branch reference (if one
exists) is not updated yet.

With --hold, execution stops here, before the change is pushed.

The change is pushed into the remote.

Consulting mystical sources of power, the workflow makes a guess about what state
you wanted to end up in after the process finishes and the working copy is put into
that state.

The branch which was landed is deleted, unless the --keep-branch flag was passed or
the landing branch is the same as the target branch.

--delete-remote

Delete the feature branch in the remote after landing it.

--hold

Prepare the change to be pushed, but do not actually push it.

--keep-branch

Keep the feature branch after pushing changes to the remote (by default, it is
deleted).

--merge

Supports: git Perform a --no-ff merge, not a --squash merge. If the project is
marked as having an immutable history, this is the default behavior.

--onto master

Land feature branch onto a branch other than the default ('master' in git,
'default' in hg). You can change the default by setting 'arc.land.onto.default'
with `arc set-config` or for the entire project in .arcconfig.

--preview

Prints the commits that would be landed. Does not actually modify or land the
commits.

--remote origin

Push to a remote other than the default ('origin' in git).

--revision id

Use the message from a specific revision, rather than inferring the revision based
on branch content.

--squash

Perform a --squash merge, not a --no-ff merge. If the project is marked as having a
mutable history, this is the default behavior.

--update-with-merge

Supports: git When updating the feature branch, use merge instead of rebase. This
is the default behavior. Setting arc.land.update.default to 'merge' can also be
used to make this the default.

--update-with-rebase

Supports: git When updating the feature branch, use rebase instead of merge. This
might make things work better in some cases. Set arc.land.update.default to
'rebase' to make this the default.

liberate [path]

Supports: libphutil Create or update a libphutil library, generating required
metadata files like init.php.

--all

Drop the module cache before liberating. This will completely reanalyze the entire
library. Thorough, but slow!

--force-update

Force the library map to be updated, even in the presence of lint errors.

--library-name name

Use a flag for library name rather than awaiting user input.

lint [options] [paths] lint [options] --rev [rev]

Supports: git, svn, hg Run static analysis on changes to check for mistakes. If no
files are specified, lint will be run on all files which have been modified.

--amend-all

When linting git repositories, amend HEAD with all patches suggested by lint
without prompting.

--amend-autofixes

When linting git repositories, amend HEAD with autofix patches suggested by lint
without prompting.

--apply-patches

Apply patches suggested by lint to the working copy without prompting.

--cache bool

0 to disable cache, 1 to enable. The default value is determined by
'arc.lint.cache' in configuration, which defaults to off. See notes in
'arc.lint.cache'.

--engine classname

Override configured lint engine for this project.

--everything

Lint all files in the project.

--lintall

Show all lint warnings, not just those on changed lines. When paths are specified,
this is the default behavior.

--never-apply-patches

Never apply patches suggested by lint.

--only-changed

Show lint warnings just on changed lines. When no paths are specified, this is the
default. This differs from only-new in cases where line modifications introduce
lint on other unmodified lines.

--only-new bool

Supports: git, hg Display only messages not present in the original code.

--outfile path

Output the linter results to a file. Defaults to stdout.

--output format

With 'summary', show lint warnings in a more compact format. With 'json', show
lint warnings in machine-readable JSON format. With 'none', show no lint warnings.
With 'compiler', show lint warnings in suitable for your editor. With 'xml', show
lint warnings in the Checkstyle XML format.

--rev revision

Supports: git, hg Lint changes since a specific revision.

--severity string

Set minimum message severity. One of: 'advice', 'autofix', 'warning', 'error',
'disabled'. Defaults to 'advice'.

linters [options] [name]

Supports: cli List the available and configured linters, with information about
what they do and which versions are installed.

if name is provided, the linter with that name will be displayed.

--search search

Search for linters. Search is case-insensitive, and is performedagainst name and
description of each linter.

--verbose

Show detailed information, including options.

list

Supports: git, svn, hg List your open Differential revisions.

paste [--title title] [--lang language] [--json] paste id [--json]

Supports: text Share and grab text using the Paste application. To create a paste,
use stdin to provide the text:

$ cat list_of_ducks.txt | arc paste

To retrieve a paste, specify the paste ID:

$ arc paste P123

--json

Output in JSON format.

--lang language

Language for syntax highlighting.

--title title

Title for the paste.

patch D12345 patch --revision revision_id patch --diff diff_id patch --patch file
patch --arcbundle bundlefile

Supports: git, svn, hg Apply the changes in a Differential revision, patchfile, or
arc bundle to the working copy.

--arcbundle bundlefile

Apply changes from an arc bundle generated with 'arc export'.

--diff diff_id

Apply changes from a Differential diff. Normally you want to use --revision to get
the most recent changes, but you can specifically apply an out-of-date diff or a
diff which was never attached to a revision by using this flag.

--encoding encoding

Attempt to convert non UTF-8 patch into specified encoding.

--force

Do not run any sanity checks.

--nobranch

Supports: git, hg Normally, a new branch (git) or bookmark (hg) is created and then
the patch is applied and committed in the new branch/bookmark. This flag
cherry-picks the resultant commit onto the original branch and deletes the
temporary branch.

--nocommit

Supports: git, hg Normally under git/hg, if the patch is successful, the changes
are committed to the working copy. This flag prevents the commit.

--patch patchfile

Apply changes from a git patchfile or unified patchfile.

--revision revision_id

Apply changes from a Differential revision, using the most recent diff that has
been attached to it. You can run 'arc patch D12345' as a shorthand.

--skip-dependencies

Supports: git, hg Normally, if a patch has dependencies that are not present in the
working copy, arc tries to apply them as well. This flag prevents such work.

--update

Supports: git, svn, hg Update the local working copy before applying the patch.

revert

Please use arc backout instead

set-config [options] -- name value

Supports: cli Sets an arc configuration option.

Options are either user (apply to all arc commands you invoke from the current
user) or local (apply only to the current working copy). By default, user
configuration is written. Use --local to write local configuration.

User values are written to '~/.arcrc' on Linux and Mac OS X, and an undisclosed
location on Windows. Local values are written to an arc directory under either
.git, .hg, or .svn as appropriate.

--local

Set a local config value instead of a user one.

shell-complete --current N -- [argv]

Supports: bash, etc. Implements shell completion. To use shell completion, source
the appropriate script from 'resources/shell/' in your .shellrc.

--current cursor_position

Current term in the argument list being completed.

start object

Start tracking work in Phrequent.

stop [--note note] [objects]

Start tracking work in Phrequent.

--note note

A note to attach to the tracked time.

tasks [options]

View all assigned tasks.

--limit n

Limit the amount of tasks outputted, default is all.

--order task_order

Arrange tasks based on priority, created, or modified, default is priority.

--owner username

Only show tasks assigned to the given username, also accepts @all to show all,
default is you.

--status task_status

Show tasks that are open or closed, default is open.

--unassigned

Only show tasks that are not assigned (upforgrabs).

time

Show what you're currently tracking in Phrequent.

todo summary [options]

Quickly create a task for yourself.

--browse

After creating the task, open it in a web browser.

--cc cc, -C cc

Other users to CC on the new task.

--project project

Projects to assign to the task.

unit [options] [paths] unit [options] --rev [rev]

Supports: git, svn, hg Run unit tests that cover specified paths. If no paths are
specified, unit tests covering all modified files will be run.

--coverage

Always enable coverage information.

--detailed-coverage

Show a detailed coverage report on the CLI. Implies --coverage.

--engine classname

Override configured unit engine for this project.

--everything

Run every test.

--json

Report results in JSON format.

--no-coverage

Always disable coverage information.

--output format

With 'full', show full pretty report (Default). With 'json', report results in JSON
format. With 'ugly', use uglier (but more efficient) JSON formatting. With 'none',
don't print results.

--rev revision

Supports: git, hg Run unit tests covering changes since a specific revision.

--target phid

(PROTOTYPE) Record a copy of the test results on the specified Harbormaster build
target.

--ugly

With --json, use uglier (but more efficient) formatting.

upgrade

Supports: cli Upgrade arcanist and libphutil to the latest versions.

upload file [file ...] [--json]

Supports: filesystems Upload a file from local disk.

--json

Output upload information in JSON format.

--temporary

Mark the file as temporary. Temporary files will be deleted automatically after 24
hours.

version [options]

Supports: cli Shows the current version of arcanist.

which [options] (svn) which [options] [commit] (hg, git)

Supports: svn, git, hg Shows which repository the current working copy corresponds
to, which commits 'arc diff' will select, and which revision is in the working copy
(or which revisions, if more than one matches).

--any-status

Show committed and abandoned revisions.

--base rules

Supports: git, hg Additional rules for determining base revision.

--head commit

Supports: git Specify the end of the commit range to select.

--show-base

Supports: git, hg Print base commit only and exit.

OPTION REFERENCE

--trace

Debugging command. Shows underlying commands as they are executed, and full stack
traces when exceptions are thrown.

--no-ansi

Output in plain ASCII text only, without color or style.

--ansi

Use formatting even in environments which probably don't support it. Example: arc
--ansi unit | less -r

--load-phutil-library=/path/to/library

Ignore libraries listed in .arcconfig and explicitly load specified libraries
instead. Mostly useful for Arcanist development.

--conduit-uri uri

Ignore configured Conduit URI and use an explicit one instead. Mostly useful for
Arcanist development.

--conduit-token token

Ignore configured credentials and use an explicit API token instead.

--conduit-version version

Ignore software version and claim to be running some other version instead. Mostly
useful for Arcanist development. May cause bad things to happen.

--conduit-timeout timeout

Override the default Conduit timeout. Specified in seconds.

--config key=value

Specify a runtime configuration value. This will take precedence over static
values, and only affect the current arcanist invocation.

--skip-arcconfig

Skip the working copy configuration file

--arcrc-file filename

Use provided file instead of ~/.arcrc.

libphutil 398e6a2d2de620e023e789675d1c94a3df00cd32 (6 Sep 2015)

arcanist 398e6a2d2de620e023e789675d1c94a3dfJanuary(2016p 2015) ARCANIST(1)

Use arc online using onworks.net services


Free Servers & Workstations

Download Windows & Linux apps

Linux commands

Ad