mirror of
https://we.phorge.it/source/arcanist.git
synced 2024-11-22 06:42:41 +01:00
No description
dfe2bde88d
Summary: Introducing `--head` caused us to run `git diff base..head` explicitly. However, we can now hit this workflow: - We resolve `HEAD` as commit `aaaa1`. - This is cached. - We notice dirty working copy changes and prompt the user to amend them to HEAD. - The user accepts the amend. - We amend, creating commit `bbbb2`. - We dirty the commit range and reload the working copy. This //does not// dirty the cache of HEAD. - We run `git diff`, but it uses the old cached HEAD: `git diff base..aaaa1`. - This works fine (`aaaa1` still exists, it's just not on any branch) but produces the wrong diff (without amended changes). To resolve this, implement the "dirty the cache when the range reloads" hook. Also never try to amend if the user provides `--head`. Test Plan: Ran `arc diff --only --trace` in a working copy with a new commit and some uncommitted changes. - Prior to this change, saw a `git diff base..aaaa1` command and the wrong diff. - After this change, saw a `git diff base..bbbb2` command and the correct diff. Reviewers: chad, csilvers, talshiri Reviewed By: talshiri Subscribers: epriestley, spicyj Differential Revision: https://secure.phabricator.com/D9506 |
||
---|---|---|
bin | ||
externals | ||
resources | ||
scripts | ||
src | ||
.arcconfig | ||
.arclint | ||
.editorconfig | ||
.gitignore | ||
LICENSE | ||
NOTICE | ||
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/ LICENSE Arcanist is released under the Apache 2.0 license except as otherwise noted.