1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-12-02 03:32:42 +01:00
phorge-phorge/src/applications/diffusion
epriestley e910c76e65 Add "Fetch Rules" to observed Git repositories
Summary:
Depends on D20421. Ref T13277. I'd generally like to move away from "Track Only".

Some of the use cases for "Track Only" (or adjacent to "Track Only") are better resolved with "Fetch Rules" -- basically, rules to fetch only some subset of refs from the observed remote.

Add configurable "Fetch Rules" for Git repositories. For example, if you only want to fetch `master`, you can now speify:

```
refs/heads/master
```

If you only want to fetch branches and tags, you can use:

```
refs/heads/*
refs/tags/*
```

In theory, this is slightly less powerful in the general case than "Track Only", but gives us better behavior in some cases (e.g., when the remote has 50K random temporary branches). In practice, I think this and a better "Autoclose Only" will let us move away from "Track Only", get default behavior which is better aligned with what users actually expect, and dodge all the "track tags/refs" questions.

Test Plan: Configured repositories with "Fetch Refs" rules, used `bin/repository pull --verbose --trace ...` to run pulls, saw expected pull/fetch behavior.

Reviewers: amckinley

Reviewed By: amckinley

Maniphest Tasks: T13277

Differential Revision: https://secure.phabricator.com/D20422
2019-04-18 05:09:36 -07:00
..
application Add a basic web UI for intracluster sync logs 2018-11-10 04:58:36 -08:00
capability Simplify the implementation of PhabricatorPolicyCapability subclasses 2014-07-25 08:25:42 +10:00
conduit Clean up a few "%Q" stragglers in SVN repository browsing code 2019-03-05 11:30:55 -08:00
config Remove "metamta.*.subject-prefix" options 2019-01-17 19:18:50 -08:00
controller Do not publish/notify about commits which are not reachable from any "Autoclose" ref 2019-04-18 05:05:00 -07:00
data When users browse to a submodule path in Diffusion explicitly, don't fatal 2017-12-18 09:18:22 -08:00
document Add a view option to disable blame in Diffusion and fix some view transition bugs 2018-04-30 15:32:23 -07:00
doorkeeper Remove "metamta.*.subject-prefix" options 2019-01-17 19:18:50 -08:00
edge Allow revisions to revert commits and one another, and commits to revert revisions 2018-02-02 08:25:58 -08:00
editfield Assign RepositoryIdentity objects to commits 2018-05-31 07:28:23 -07:00
editor Add "Fetch Rules" to observed Git repositories 2019-04-18 05:09:36 -07:00
engine Accept pushes with arbitrary Git refs 2019-04-17 12:43:20 -07:00
engineextension Continue replacing Commit/Audit status checks with object-based checks 2018-09-10 11:20:31 -07:00
exception Filter and reject "--config" and "--debugger" flags to Mercurial in any position 2017-11-10 08:42:07 -08:00
garbagecollector Support ID-based repository URIs, and canonicalize repository URIs 2016-02-18 09:56:28 -08:00
gitlfs Fix a missing getSSHUser() callsite 2018-01-31 15:34:12 -08:00
harbormaster Pass commit authorship information to Buildkite 2018-08-27 12:52:11 -07:00
herald Accept pushes with arbitrary Git refs 2019-04-17 12:43:20 -07:00
management Add "Fetch Rules" to observed Git repositories 2019-04-18 05:09:36 -07:00
panel Add icons to Settings 2019-01-23 13:41:41 -08:00
protocol Make the "git upload-pack" proxy more robust 2019-04-18 05:04:05 -07:00
query Convert simple query subclasses to use internal cursors 2019-03-19 13:00:27 -07:00
relationships Convert all standard relationship-editing actions to modern Relationships code 2016-06-29 11:24:52 -07:00
remarkup When commits have a "rewritten" hint, try to show that in handles in other applications 2016-08-24 09:35:19 -07:00
request Correct an ambiguous regexp in DiffusionRequest 2018-11-01 20:01:39 -07:00
response Implement a Git LFS server which supports no operations 2016-03-17 08:08:43 -07:00
searchfield Assign RepositoryIdentity objects to commits 2018-05-31 07:28:23 -07:00
ssh Proxy the "git upload-pack" wire protocol 2019-04-18 04:57:51 -07:00
symbol Provide character position information to symbol queries 2018-01-26 13:01:57 -08:00
typeahead Assign RepositoryIdentity objects to commits 2018-05-31 07:28:23 -07:00
view Replace "URI->setQueryParams()" after initialization with a constructor argument 2019-02-14 11:46:37 -08:00
xaction Expose Audit actions for "transaction.search" in a basic way 2018-10-27 07:19:50 -07:00
DiffusionCommitAuditStatus.php Enrich "diffusion.commit.search" with identity, status, and message information 2018-09-12 12:45:44 -07:00
DiffusionLintSaveRunner.php Continue cleaning up queries in the wake of changes to "%Q" 2018-11-16 12:49:44 -08:00