1
0
Fork 0
mirror of https://we.phorge.it/source/arcanist.git synced 2024-12-25 15:00:57 +01:00
No description
Find a file
Evan Priestley 97501da164 Fix double file content in files in new subdirectories in Subversion
Summary:
Fixes T5555. Normally, when we `svn diff subdir/`, we use `--depth empty` to get only changes for the directory itself (usually, property changes).

However, this flag has no effect if the directory is newly added.

Adjust the diff parser so that if two sets of hunks are specified for a single file in a raw diff, we let the last one win instead of including both. This approach is a broadly more reasonable interpretation of these diffs.

Test Plan:
  - Added a new file in a new subdirectory in Subversion.
  - Ran `arc diff --only`.
  - No double file content in resulting diff.
  - Added unit test.
  - There's fairly comprehensive unit test coverage for this stuff.

Reviewers: btrahan, chad

Reviewed By: chad

Subscribers: epriestley

Maniphest Tasks: T5555

Differential Revision: https://secure.phabricator.com/D9921
2014-07-15 09:43:04 -07:00
bin Added ArcanistTextLinter::LINT_BOF_WHITESPACE and ArcanistTextLinter::LINT_EOF_WHITESPACE 2014-01-13 18:05:42 -08:00
externals Update PEP8. 2014-06-07 11:31:26 -07:00
resources Move PhutilLibraryMapBuilder to libphutil 2014-07-05 17:01:36 +10:00
scripts Fix various spelling mistakes 2014-07-13 00:45:38 +10:00
src Fix double file content in files in new subdirectories in Subversion 2014-07-15 09:43:04 -07:00
.arcconfig Use the ArcanistConfigurationDrivenLintEngine as a linting engine. 2014-05-11 19:33:40 -07:00
.arclint Move ArcanistSpellingDefaultData into a configurable JSON file 2014-07-04 08:18:33 +10:00
.editorconfig Apply various linter fixes. 2014-06-10 11:02:42 -07:00
.gitignore Update .gitignore. 2014-06-14 11:44:38 -07:00
LICENSE Delete license headers from files 2012-11-05 11:16:24 -08:00
NOTICE Update arcanist NOTICE file 2014-06-25 13:43:07 -07:00
README Delete license headers from files 2012-11-05 11:16:24 -08:00

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.