mirror of
https://we.phorge.it/source/arcanist.git
synced 2024-11-26 00:32:41 +01:00
No description
038d8e86d6
Summary: NOTE: This is a disruptive change to how 'arc diff' behaves by default. Many years ago, Differential (then DiffCamp) supported SVN. Someone added a "-i" mode to the "diffcamp" script so you could "git show | diffcamp -i", and thus we were forever bound to storing metadata in commit messages. But this isn't a common use case outside of Facebook + git-svn, and isn't very flexible. We now have a great deal of flexibility to identify revisions based on hashes, branch names, etc, and to sync metdata from web to CLI and back. I want to jettison the commit-message-bound artifacts of the tool's history, and move to a more flexible, modern workflow. I added "--auto" a while ago, which figures out if you want to create or update a diff automatically, and then prompts you for whatever data it needs, reading information if it can from commit messages in the range. This is a vastly better workflow in general, especially for SVN and Mercurial users (who currently need to jump to the web UI to create revisions). It's better for git users too, since they don't need to use template commits and don't have to muck with or configure templates. However, it's a nontrivial change to git users' core workflow that is clearly different in more ways than it is clearly better. - This might be contentious, but probably not toooo much, I hope? - I also deleted the (fairly ridiculous) workflow where we sync commit message changes from the working copy. I think two or three people will be REALLY upset about this but I have no sympathy. "--edit" covers this and has been around for like two years now, and making the commit message and web dual-authoritative was always a bad idea that we only ever half-accommodated anyway (see giant swaths of removed TOOD nonsense). Test Plan: - I've been using "--auto" exclusively for like a month, it seems to work well. - Created/updated SVN, Git and HG diffs with "arc diff" under this workflow. Reviewers: btrahan, jungejason, nh Reviewed By: btrahan CC: Makinde, vrana, zeeg, mbautin, aran, yairlivne, 20after4 Maniphest Tasks: T614 Differential Revision: https://secure.phabricator.com/D2080 |
||
---|---|---|
bin | ||
externals | ||
resources | ||
scripts | ||
src | ||
.arcconfig | ||
.divinerconfig | ||
.gitignore | ||
LICENSE | ||
README |
WHAT IS ARCANIST? Arcanist is the command-line tool for Phabricator. It allows you to interact with Phabricator installs to send code for review, download patches, transfer files, view status, make API calls, and various other things. You can find a complete user guide here: http://www.phabricator.com/docs/phabricator/article/Arcanist_User_Guide.html For more information about Phabricator, see: http://phabricator.org/