Changeset View
Changeset View
Standalone View
Standalone View
src/docs/user/userguide/diffusion_managing.diviner
Show First 20 Lines • Show All 240 Lines • ▼ Show 20 Lines | |||||
The **Limits** panel allows you to configure limits and timeouts. | The **Limits** panel allows you to configure limits and timeouts. | ||||
**Filesize Limit**: Allows you to set a maximum filesize for any file in the | **Filesize Limit**: Allows you to set a maximum filesize for any file in the | ||||
repository. If a commit creates a larger file (or modifies an existing file so | repository. If a commit creates a larger file (or modifies an existing file so | ||||
it becomes too large) it will be rejected. This option only applies to hosted | it becomes too large) it will be rejected. This option only applies to hosted | ||||
repositories. | repositories. | ||||
This limit is primarily intended to make it more difficult to accidentally push | |||||
very large files that shouldn't be version controlled (like logs, binaries, | |||||
machine learning data, or media assets). Pushing huge datafiles by mistake can | |||||
make the repository unwieldy by dramatically increasing how much data must be | |||||
transferred over the network to clone it, and simply reverting the changes | |||||
doesn't reduce the impact of this kind of mistake. | |||||
**Clone/Fetch Timeout**: Configure the internal timeout for creating copies | **Clone/Fetch Timeout**: Configure the internal timeout for creating copies | ||||
of this repository during operations like intracluster synchronization and | of this repository during operations like intracluster synchronization and | ||||
Drydock working copy construction. This timeout does not affect external | Drydock working copy construction. This timeout does not affect external | ||||
users. | users. | ||||
**Touch Limit**: Apply a limit to the maximum number of paths that any commit | |||||
may touch. If a commit affects more paths than this limit, it will be rejected. | |||||
This option only applies to hosted repositories. Users may work around this | |||||
limit by breaking the commit into several smaller commits which each affect | |||||
fewer paths. | |||||
This limit is intended to offer a guard rail against users making silly | |||||
mistakes that create obviously mistaken changes, like copying an entire | |||||
repository into itself and pushing the result. This kind of change can take | |||||
some effort to clean up if it becomes part of repository history. | |||||
Note that if you move a file, both the old and new locations count as touched | |||||
paths. You should generally configure this limit to be more than twice the | |||||
number of files you anticipate any user ever legitimately wanting to move in | |||||
a single commit. For example, a limit of `20000` will let users move up to | |||||
10,000 files in a single commit, but will reject users mistakenly trying to | |||||
push a copy of another repository or a directory with a million logfiles or | |||||
whatever other kind of creative nonsense they manage to dream up. | |||||
Branches | Branches | ||||
======== | ======== | ||||
The **Branches** panel allows you to configure how Phabricator interacts with | The **Branches** panel allows you to configure how Phabricator interacts with | ||||
branches. | branches. | ||||
This panel is not available for Subversion repositories, because Subversion | This panel is not available for Subversion repositories, because Subversion | ||||
does not have formal branches. | does not have formal branches. | ||||
▲ Show 20 Lines • Show All 139 Lines • Show Last 20 Lines |