mirror of
https://we.phorge.it/source/arcanist.git
synced 2025-01-22 20:51:09 +01:00
No description
ee6357386d
Summary: `parseGitRawDiff` dealt with the `A`, `M`, and `D` status flags from `git diff --raw`, for file additions, modifications, and deletions respectively. However, it failed to cope with `C` and `R` flags, for copies and renames. Git version 2.9 and above default to resolving renames, even in `git diff --raw` output, making this lack of support only salient now (though users with Git's `diff.rename` set encountered it previously). Those two flags differ from the other three in that they offer both the source and destination filename, separated by a tab. As `parseGitRawDiff` was not aware of this property, it returned a "filename" of `"oldfile\tnewfile"`. This is surfaced in several places, including as passed to linters as a filename to check. Needless to say, this file is nearly guaranteed to never exist on disk. Detect both the `C` and `R` flag types, and generate either a file addition, or a pair of addition/deletion entries. Test Plan: Renamed a file, with a linter that printed each file it was called with. Reviewers: #blessed_reviewers, epriestley Reviewed By: #blessed_reviewers, epriestley Subscribers: jboning, Korvin Differential Revision: https://secure.phabricator.com/D16387 |
||
---|---|---|
bin | ||
externals | ||
resources | ||
scripts | ||
src | ||
.arcconfig | ||
.arclint | ||
.arcunit | ||
.editorconfig | ||
.gitignore | ||
LICENSE | ||
NOTICE | ||
README.md |
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 read more in the User Guide
For more information about Phabricator, see http://phabricator.org/.
LICENSE
Arcanist is released under the Apache 2.0 license except as otherwise noted.