mirror of
https://we.phorge.it/source/arcanist.git
synced 2024-11-25 16:22:42 +01:00
staging repo compatibility for older git versions
Summary: The `--no-verify` flag was not added until git 1.8.2. This flag is used to avoid running local pre-push hooks. This is likely a rare configuration and is safe to omit the flag on older versions. Users with local pre-push hooks **and** older git version may need to adjust their workfow. fixes T9310 Test Plan: * Ran `arc diff` with my real git 1.7.10.4 and succeeded with `STAGING PUSHED`. * Edited `getGitVersion` to be > 1.8.2 and pushed again. Got `STAGING FAILED` because `error: unknown option`. Reviewers: #blessed_reviewers, epriestley Reviewed By: #blessed_reviewers, epriestley Subscribers: joshuaspence, epriestley Maniphest Tasks: T9310 Differential Revision: https://secure.phabricator.com/D14033
This commit is contained in:
parent
9419cccdd2
commit
029e5a7c29
1 changed files with 6 additions and 1 deletions
|
@ -2667,8 +2667,13 @@ EOTEXT
|
||||||
pht('PUSH STAGING'),
|
pht('PUSH STAGING'),
|
||||||
pht('Pushing changes to staging area...'));
|
pht('Pushing changes to staging area...'));
|
||||||
|
|
||||||
|
$push_flags = array();
|
||||||
|
if (version_compare($api->getGitVersion(), '1.8.2', '>=')) {
|
||||||
|
$push_flags[] = '--no-verify';
|
||||||
|
}
|
||||||
$err = phutil_passthru(
|
$err = phutil_passthru(
|
||||||
'git push --no-verify -- %s %s:refs/tags/%s',
|
'git push %Ls -- %s %s:refs/tags/%s',
|
||||||
|
$push_flags,
|
||||||
$staging_uri,
|
$staging_uri,
|
||||||
$commit,
|
$commit,
|
||||||
$tag);
|
$tag);
|
||||||
|
|
Loading…
Reference in a new issue