Page MenuHomePhabricator

D17547.id.diff
No OneTemporary

D17547.id.diff

diff --git a/src/configuration/ArcanistSettings.php b/src/configuration/ArcanistSettings.php
--- a/src/configuration/ArcanistSettings.php
+++ b/src/configuration/ArcanistSettings.php
@@ -174,6 +174,14 @@
'help' => pht(
'Configured command aliases. Use "arc alias" to define aliases.'),
),
+ 'arc.diff.svn.use-internal-diff' => array(
+ 'type' => 'bool',
+ 'help' => pht(
+ 'Use subversion\'s internal diff tool for generating diffs. '.
+ 'This requires at least subversion version 1.9.'),
+ 'default' => false,
+ 'example' => 'false',
+ ),
);
}
diff --git a/src/repository/api/ArcanistSubversionAPI.php b/src/repository/api/ArcanistSubversionAPI.php
--- a/src/repository/api/ArcanistSubversionAPI.php
+++ b/src/repository/api/ArcanistSubversionAPI.php
@@ -292,6 +292,18 @@
// directory is newly added (see T5555) so we need to filter the results
// out later as well.
+ $svn_internal_diff = 'arc.diff.svn.use-internal-diff';
+ $configmanager = $this->getConfigurationManager();
+ $use_svn_diff = $configmanager->getConfigFromAnySource($svn_internal_diff);
+ if ($use_svn_diff) {
+ return $this->buildLocalFuture(
+ array(
+ 'diff --depth empty --internal-diff -x -U%d %s',
+ $this->getDiffLinesOfContext(),
+ $path,
+ ));
+ }
+
if (phutil_is_windows()) {
// TODO: Provide a binary_safe_diff script for Windows.
// TODO: Provide a diff command which can take lines of context somehow.

File Metadata

Mime Type
text/plain
Expires
Sun, Mar 16, 4:09 AM (4 d, 5 h ago)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
7705670
Default Alt Text
D17547.id.diff (1 KB)

Event Timeline