Phabricator/Arcanist/Land

The arc land workflow is for landing a change after code review.

$ arc help land

land [options] [branch] [--onto master]
    Supports: git, hg

 Land an accepted change (currently sitting in local feature branch
 branch) onto master and push it to the remote. Then, delete
 the feature branch. If you omit branch, the current branch will
 be used.

 In mutable repositories, this will perform a --squash merge (the
 entire branch will be represented by one commit on master). In
 immutable repositories (or when --merge is provided), it will perform
 a --no-ff merge (the branch will always be merged into master with
 a merge commit).

 --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.