comparison doc/hgrc.5.txt @ 8766:b2059435f176

man pages: mark filenames and env vars as fixed text
author Martin Geisler <mg@lazybytes.net>
date Tue, 09 Jun 2009 23:08:55 +0200
parents 01f0ddb90342
children b03859265cc4
comparison
equal deleted inserted replaced
8765:9c75f16f577c 8766:b2059435f176
15 FILES 15 FILES
16 ----- 16 -----
17 17
18 Mercurial reads configuration data from several files, if they exist. 18 Mercurial reads configuration data from several files, if they exist.
19 The names of these files depend on the system on which Mercurial is 19 The names of these files depend on the system on which Mercurial is
20 installed. *.rc files from a single directory are read in alphabetical 20 installed. `*.rc` files from a single directory are read in alphabetical
21 order, later ones overriding earlier ones. Where multiple paths are 21 order, later ones overriding earlier ones. Where multiple paths are
22 given below, settings from later paths override earlier ones. 22 given below, settings from later paths override earlier ones.
23 23
24 (Unix) <install-root>/etc/mercurial/hgrc.d/*.rc:: 24 (Unix) `<install-root>/etc/mercurial/hgrc.d/*.rc`::
25 (Unix) <install-root>/etc/mercurial/hgrc:: 25 (Unix) `<install-root>/etc/mercurial/hgrc`::
26 Per-installation configuration files, searched for in the 26 Per-installation configuration files, searched for in the
27 directory where Mercurial is installed. <install-root> is the 27 directory where Mercurial is installed. `<install-root>` is the
28 parent directory of the hg executable (or symlink) being run. For 28 parent directory of the hg executable (or symlink) being run. For
29 example, if installed in /shared/tools/bin/hg, Mercurial will look 29 example, if installed in `/shared/tools/bin/hg`, Mercurial will look
30 in /shared/tools/etc/mercurial/hgrc. Options in these files apply 30 in `/shared/tools/etc/mercurial/hgrc`. Options in these files apply
31 to all Mercurial commands executed by any user in any directory. 31 to all Mercurial commands executed by any user in any directory.
32 32
33 (Unix) /etc/mercurial/hgrc.d/*.rc:: 33 (Unix) `/etc/mercurial/hgrc.d/*.rc`::
34 (Unix) /etc/mercurial/hgrc:: 34 (Unix) `/etc/mercurial/hgrc`::
35 Per-system configuration files, for the system on which Mercurial 35 Per-system configuration files, for the system on which Mercurial
36 is running. Options in these files apply to all Mercurial commands 36 is running. Options in these files apply to all Mercurial commands
37 executed by any user in any directory. Options in these files 37 executed by any user in any directory. Options in these files
38 override per-installation options. 38 override per-installation options.
39 39
40 (Windows) <install-dir>\Mercurial.ini:: 40 (Windows) `<install-dir>\Mercurial.ini`::
41 or else:: 41 or else::
42 (Windows) HKEY_LOCAL_MACHINE\SOFTWARE\Mercurial:: 42 (Windows) `HKEY_LOCAL_MACHINE\SOFTWARE\Mercurial`::
43 or else:: 43 or else::
44 (Windows) C:\Mercurial\Mercurial.ini:: 44 (Windows) `C:\Mercurial\Mercurial.ini`::
45 Per-installation/system configuration files, for the system on 45 Per-installation/system configuration files, for the system on
46 which Mercurial is running. Options in these files apply to all 46 which Mercurial is running. Options in these files apply to all
47 Mercurial commands executed by any user in any directory. Registry 47 Mercurial commands executed by any user in any directory. Registry
48 keys contain PATH-like strings, every part of which must reference 48 keys contain PATH-like strings, every part of which must reference
49 a Mercurial.ini file or be a directory where *.rc files will be 49 a `Mercurial.ini` file or be a directory where `*.rc` files will be
50 read. 50 read.
51 51
52 (Unix) $HOME/.hgrc:: 52 (Unix) `$HOME/.hgrc`::
53 (Windows) %HOME%\Mercurial.ini:: 53 (Windows) `%HOME%\Mercurial.ini`::
54 (Windows) %HOME%\.hgrc:: 54 (Windows) `%HOME%\.hgrc`::
55 (Windows) %USERPROFILE%\Mercurial.ini:: 55 (Windows) `%USERPROFILE%\Mercurial.ini`::
56 (Windows) %USERPROFILE%\.hgrc:: 56 (Windows) `%USERPROFILE%\.hgrc`::
57 Per-user configuration file(s), for the user running Mercurial. On 57 Per-user configuration file(s), for the user running Mercurial. On
58 Windows 9x, %HOME% is replaced by %APPDATA%. 58 Windows 9x, `%HOME%` is replaced by `%APPDATA%`.
59 Options in these files apply to all Mercurial commands executed by 59 Options in these files apply to all Mercurial commands executed by
60 this user in any directory. Options in thes files override 60 this user in any directory. Options in thes files override
61 per-installation and per-system options. 61 per-installation and per-system options.
62 62
63 (Unix, Windows) <repo>/.hg/hgrc:: 63 (Unix, Windows) `<repo>/.hg/hgrc`::
64 Per-repository configuration options that only apply in a 64 Per-repository configuration options that only apply in a
65 particular repository. This file is not version-controlled, and 65 particular repository. This file is not version-controlled, and
66 will not get transferred during a "clone" operation. Options in 66 will not get transferred during a "clone" operation. Options in
67 this file override options in all other configuration files. On 67 this file override options in all other configuration files. On
68 Unix, most of this file will be ignored if it doesn't belong to a 68 Unix, most of this file will be ignored if it doesn't belong to a
275 "/usr/sbin/sendmail" is enough to use sendmail to send messages. 275 "/usr/sbin/sendmail" is enough to use sendmail to send messages.
276 charsets;; 276 charsets;;
277 Optional. Comma-separated list of charsets considered convenient 277 Optional. Comma-separated list of charsets considered convenient
278 for recipients. Addresses, headers, and parts not containing 278 for recipients. Addresses, headers, and parts not containing
279 patches of outgoing messages will be encoded in the first charset 279 patches of outgoing messages will be encoded in the first charset
280 to which conversion from local encoding ($HGENCODING, 280 to which conversion from local encoding (`$HGENCODING`,
281 ui.fallbackencoding) succeeds. If correct conversion fails, the 281 `ui.fallbackencoding`) succeeds. If correct conversion fails, the
282 text in question is sent as is. Defaults to empty (explicit) list. 282 text in question is sent as is. Defaults to empty (explicit) list.
283 283
284 Order of outgoing email charsets: 284 Order of outgoing email charsets:
285 285
286 us-ascii always first, regardless of settings 286 us-ascii always first, regardless of settings
314 To explicitly disable an extension that is enabled in an hgrc of 314 To explicitly disable an extension that is enabled in an hgrc of
315 broader scope, prepend its path with '!', as in 315 broader scope, prepend its path with '!', as in
316 'hgext.foo = !/ext/path' or 'hgext.foo = !' when path is not 316 'hgext.foo = !/ext/path' or 'hgext.foo = !' when path is not
317 supplied. 317 supplied.
318 318
319 Example for ~/.hgrc: 319 Example for `~/.hgrc`:
320 320
321 [extensions] 321 [extensions]
322 # (the mq extension will get loaded from mercurial's path) 322 # (the mq extension will get loaded from mercurial's path)
323 hgext.mq = 323 hgext.mq =
324 # (this extension will get loaded from the file specified) 324 # (this extension will get loaded from the file specified)
359 [[merge-tools]] 359 [[merge-tools]]
360 merge-tools:: 360 merge-tools::
361 This section configures external merge tools to use for file-level 361 This section configures external merge tools to use for file-level
362 merges. 362 merges.
363 363
364 Example ~/.hgrc: 364 Example `~/.hgrc`:
365 365
366 [merge-tools] 366 [merge-tools]
367 # Override stock tool location 367 # Override stock tool location
368 kdiff3.executable = ~/bin/kdiff3 368 kdiff3.executable = ~/bin/kdiff3
369 # Specify command line 369 # Specify command line
385 Either just the name of the executable or its pathname. 385 Either just the name of the executable or its pathname.
386 Default: the tool name. 386 Default: the tool name.
387 args;; 387 args;;
388 The arguments to pass to the tool executable. You can refer to the 388 The arguments to pass to the tool executable. You can refer to the
389 files being merged as well as the output file through these 389 files being merged as well as the output file through these
390 variables: $base, $local, $other, $output. 390 variables: `$base`, `$local`, `$other`, `$output`.
391 Default: $local $base $other 391 Default: `$local $base $other`
392 premerge;; 392 premerge;;
393 Attempt to run internal non-interactive 3-way merge tool before 393 Attempt to run internal non-interactive 3-way merge tool before
394 launching external tool. 394 launching external tool.
395 Default: True 395 Default: True
396 binary;; 396 binary;;
413 gui;; 413 gui;;
414 This tool requires a graphical interface to run. Default: False 414 This tool requires a graphical interface to run. Default: False
415 regkey;; 415 regkey;;
416 Windows registry key which describes install location of this 416 Windows registry key which describes install location of this
417 tool. Mercurial will search for this key first under 417 tool. Mercurial will search for this key first under
418 HKEY_CURRENT_USER and then under HKEY_LOCAL_MACHINE. 418 `HKEY_CURRENT_USER` and then under `HKEY_LOCAL_MACHINE`.
419 Default: None 419 Default: None
420 regname;; 420 regname;;
421 Name of value to read from specified registry key. Defaults to the 421 Name of value to read from specified registry key. Defaults to the
422 unnamed (default) value. 422 unnamed (default) value.
423 regappend;; 423 regappend;;
431 various actions such as starting or finishing a commit. Multiple 431 various actions such as starting or finishing a commit. Multiple
432 hooks can be run for the same action by appending a suffix to the 432 hooks can be run for the same action by appending a suffix to the
433 action. Overriding a site-wide hook can be done by changing its 433 action. Overriding a site-wide hook can be done by changing its
434 value or setting it to an empty string. 434 value or setting it to an empty string.
435 435
436 Example .hg/hgrc: 436 Example `.hg/hgrc`:
437 437
438 [hooks] 438 [hooks]
439 # do not use the site-wide hook 439 # do not use the site-wide hook
440 incoming = 440 incoming =
441 incoming.email = /my/email/hook 441 incoming.email = /my/email/hook
445 additional information. For each hook below, the environment 445 additional information. For each hook below, the environment
446 variables it is passed are listed with names of the form "$HG_foo". 446 variables it is passed are listed with names of the form "$HG_foo".
447 447
448 changegroup;; 448 changegroup;;
449 Run after a changegroup has been added via push, pull or unbundle. 449 Run after a changegroup has been added via push, pull or unbundle.
450 ID of the first new changeset is in $HG_NODE. URL from which 450 ID of the first new changeset is in `$HG_NODE`. URL from which
451 changes came is in $HG_URL. 451 changes came is in `$HG_URL`.
452 commit;; 452 commit;;
453 Run after a changeset has been created in the local repository. ID 453 Run after a changeset has been created in the local repository. ID
454 of the newly created changeset is in $HG_NODE. Parent changeset 454 of the newly created changeset is in `$HG_NODE`. Parent changeset
455 IDs are in $HG_PARENT1 and $HG_PARENT2. 455 IDs are in `$HG_PARENT1` and `$HG_PARENT2`.
456 incoming;; 456 incoming;;
457 Run after a changeset has been pulled, pushed, or unbundled into 457 Run after a changeset has been pulled, pushed, or unbundled into
458 the local repository. The ID of the newly arrived changeset is in 458 the local repository. The ID of the newly arrived changeset is in
459 $HG_NODE. URL that was source of changes came is in $HG_URL. 459 `$HG_NODE`. URL that was source of changes came is in `$HG_URL`.
460 outgoing;; 460 outgoing;;
461 Run after sending changes from local repository to another. ID of 461 Run after sending changes from local repository to another. ID of
462 first changeset sent is in $HG_NODE. Source of operation is in 462 first changeset sent is in `$HG_NODE`. Source of operation is in
463 $HG_SOURCE; see "preoutgoing" hook for description. 463 `$HG_SOURCE`; see "preoutgoing" hook for description.
464 post-<command>;; 464 post-<command>;;
465 Run after successful invocations of the associated command. The 465 Run after successful invocations of the associated command. The
466 contents of the command line are passed as $HG_ARGS and the result 466 contents of the command line are passed as `$HG_ARGS` and the result
467 code in $HG_RESULT. Hook failure is ignored. 467 code in `$HG_RESULT`. Hook failure is ignored.
468 pre-<command>;; 468 pre-<command>;;
469 Run before executing the associated command. The contents of the 469 Run before executing the associated command. The contents of the
470 command line are passed as $HG_ARGS. If the hook returns failure, 470 command line are passed as `$HG_ARGS`. If the hook returns failure,
471 the command doesn't execute and Mercurial returns the failure 471 the command doesn't execute and Mercurial returns the failure
472 code. 472 code.
473 prechangegroup;; 473 prechangegroup;;
474 Run before a changegroup is added via push, pull or unbundle. Exit 474 Run before a changegroup is added via push, pull or unbundle. Exit
475 status 0 allows the changegroup to proceed. Non-zero status will 475 status 0 allows the changegroup to proceed. Non-zero status will
476 cause the push, pull or unbundle to fail. URL from which changes 476 cause the push, pull or unbundle to fail. URL from which changes
477 will come is in $HG_URL. 477 will come is in `$HG_URL`.
478 precommit;; 478 precommit;;
479 Run before starting a local commit. Exit status 0 allows the 479 Run before starting a local commit. Exit status 0 allows the
480 commit to proceed. Non-zero status will cause the commit to fail. 480 commit to proceed. Non-zero status will cause the commit to fail.
481 Parent changeset IDs are in $HG_PARENT1 and $HG_PARENT2. 481 Parent changeset IDs are in `$HG_PARENT1` and `$HG_PARENT2`.
482 preoutgoing;; 482 preoutgoing;;
483 Run before collecting changes to send from the local repository to 483 Run before collecting changes to send from the local repository to
484 another. Non-zero status will cause failure. This lets you prevent 484 another. Non-zero status will cause failure. This lets you prevent
485 pull over http or ssh. Also prevents against local pull, push 485 pull over http or ssh. Also prevents against local pull, push
486 (outbound) or bundle commands, but not effective, since you can 486 (outbound) or bundle commands, but not effective, since you can
487 just copy files instead then. Source of operation is in 487 just copy files instead then. Source of operation is in
488 $HG_SOURCE. If "serve", operation is happening on behalf of remote 488 `$HG_SOURCE`. If "serve", operation is happening on behalf of remote
489 ssh or http repository. If "push", "pull" or "bundle", operation 489 ssh or http repository. If "push", "pull" or "bundle", operation
490 is happening on behalf of repository on same system. 490 is happening on behalf of repository on same system.
491 pretag;; 491 pretag;;
492 Run before creating a tag. Exit status 0 allows the tag to be 492 Run before creating a tag. Exit status 0 allows the tag to be
493 created. Non-zero status will cause the tag to fail. ID of 493 created. Non-zero status will cause the tag to fail. ID of
494 changeset to tag is in $HG_NODE. Name of tag is in $HG_TAG. Tag is 494 changeset to tag is in `$HG_NODE`. Name of tag is in `$HG_TAG`. Tag is
495 local if $HG_LOCAL=1, in repo if $HG_LOCAL=0. 495 local if `$HG_LOCAL=1`, in repo if `$HG_LOCAL=0`.
496 pretxnchangegroup;; 496 pretxnchangegroup;;
497 Run after a changegroup has been added via push, pull or unbundle, 497 Run after a changegroup has been added via push, pull or unbundle,
498 but before the transaction has been committed. Changegroup is 498 but before the transaction has been committed. Changegroup is
499 visible to hook program. This lets you validate incoming changes 499 visible to hook program. This lets you validate incoming changes
500 before accepting them. Passed the ID of the first new changeset in 500 before accepting them. Passed the ID of the first new changeset in
501 $HG_NODE. Exit status 0 allows the transaction to commit. Non-zero 501 `$HG_NODE`. Exit status 0 allows the transaction to commit. Non-zero
502 status will cause the transaction to be rolled back and the push, 502 status will cause the transaction to be rolled back and the push,
503 pull or unbundle will fail. URL that was source of changes is in 503 pull or unbundle will fail. URL that was source of changes is in
504 $HG_URL. 504 `$HG_URL`.
505 pretxncommit;; 505 pretxncommit;;
506 Run after a changeset has been created but the transaction not yet 506 Run after a changeset has been created but the transaction not yet
507 committed. Changeset is visible to hook program. This lets you 507 committed. Changeset is visible to hook program. This lets you
508 validate commit message and changes. Exit status 0 allows the 508 validate commit message and changes. Exit status 0 allows the
509 commit to proceed. Non-zero status will cause the transaction to 509 commit to proceed. Non-zero status will cause the transaction to
510 be rolled back. ID of changeset is in $HG_NODE. Parent changeset 510 be rolled back. ID of changeset is in `$HG_NODE`. Parent changeset
511 IDs are in $HG_PARENT1 and $HG_PARENT2. 511 IDs are in `$HG_PARENT1` and `$HG_PARENT2`.
512 preupdate;; 512 preupdate;;
513 Run before updating the working directory. Exit status 0 allows 513 Run before updating the working directory. Exit status 0 allows
514 the update to proceed. Non-zero status will prevent the update. 514 the update to proceed. Non-zero status will prevent the update.
515 Changeset ID of first new parent is in $HG_PARENT1. If merge, ID 515 Changeset ID of first new parent is in `$HG_PARENT1`. If merge, ID
516 of second new parent is in $HG_PARENT2. 516 of second new parent is in `$HG_PARENT2`.
517 tag;; 517 tag;;
518 Run after a tag is created. ID of tagged changeset is in $HG_NODE. 518 Run after a tag is created. ID of tagged changeset is in `$HG_NODE`.
519 Name of tag is in $HG_TAG. Tag is local if $HG_LOCAL=1, in repo if 519 Name of tag is in `$HG_TAG`. Tag is local if `$HG_LOCAL=1`, in repo if
520 $HG_LOCAL=0. 520 `$HG_LOCAL=0`.
521 update;; 521 update;;
522 Run after updating the working directory. Changeset ID of first 522 Run after updating the working directory. Changeset ID of first
523 new parent is in $HG_PARENT1. If merge, ID of second new parent is 523 new parent is in `$HG_PARENT1`. If merge, ID of second new parent is
524 in $HG_PARENT2. If the update succeeded, $HG_ERROR=0. If the 524 in `$HG_PARENT2`. If the update succeeded, `$HG_ERROR=0`. If the
525 update failed (e.g. because conflicts not resolved), $HG_ERROR=1. 525 update failed (e.g. because conflicts not resolved), `$HG_ERROR=1`.
526 526
527 Note: it is generally better to use standard hooks rather than the 527 Note: it is generally better to use standard hooks rather than the
528 generic pre- and post- command hooks as they are guaranteed to be 528 generic pre- and post- command hooks as they are guaranteed to be
529 called in the appropriate contexts for influencing transactions. 529 called in the appropriate contexts for influencing transactions.
530 Also, hooks like "commit" will be called in all contexts that 530 Also, hooks like "commit" will be called in all contexts that
531 generate a commit (e.g. tag) and not just the commit command. 531 generate a commit (e.g. tag) and not just the commit command.
532 532
533 Note2: Environment variables with empty values may not be passed to 533 Note2: Environment variables with empty values may not be passed to
534 hooks on platforms such as Windows. As an example, $HG_PARENT2 will 534 hooks on platforms such as Windows. As an example, `$HG_PARENT2` will
535 have an empty value under Unix-like platforms for non-merge 535 have an empty value under Unix-like platforms for non-merge
536 changesets, while it will not be available at all under Windows. 536 changesets, while it will not be available at all under Windows.
537 537
538 The syntax for Python hooks is as follows: 538 The syntax for Python hooks is as follows:
539 539
638 data transfer overhead. Default is False. 638 data transfer overhead. Default is False.
639 639
640 [[trusted]] 640 [[trusted]]
641 trusted:: 641 trusted::
642 For security reasons, Mercurial will not use the settings in the 642 For security reasons, Mercurial will not use the settings in the
643 .hg/hgrc file from a repository if it doesn't belong to a trusted 643 `.hg/hgrc` file from a repository if it doesn't belong to a trusted
644 user or to a trusted group. The main exception is the web interface, 644 user or to a trusted group. The main exception is the web interface,
645 which automatically uses some safe settings, since it's common to 645 which automatically uses some safe settings, since it's common to
646 serve repositories from different users. 646 serve repositories from different users.
647 647
648 This section specifies what users and groups are trusted. The 648 This section specifies what users and groups are trusted. The
662 (hashes for the repository base and for tip) in archives created 662 (hashes for the repository base and for tip) in archives created
663 by the hg archive command or downloaded via hgweb. 663 by the hg archive command or downloaded via hgweb.
664 Default is true. 664 Default is true.
665 askusername;; 665 askusername;;
666 Whether to prompt for a username when committing. If True, and 666 Whether to prompt for a username when committing. If True, and
667 neither $HGUSER nor $EMAIL has been specified, then the user will 667 neither `$HGUSER` nor `$EMAIL` has been specified, then the user will
668 be prompted to enter a username. If no username is entered, the 668 be prompted to enter a username. If no username is entered, the
669 default USER@HOST is used instead. 669 default USER@HOST is used instead.
670 Default is False. 670 Default is False.
671 debug;; 671 debug;;
672 Print debugging information. True or False. Default is False. 672 Print debugging information. True or False. Default is False.
673 editor;; 673 editor;;
674 The editor to use during a commit. Default is $EDITOR or "vi". 674 The editor to use during a commit. Default is `$EDITOR` or "vi".
675 fallbackencoding;; 675 fallbackencoding;;
676 Encoding to try if it's not possible to decode the changelog using 676 Encoding to try if it's not possible to decode the changelog using
677 UTF-8. Default is ISO-8859-1. 677 UTF-8. Default is ISO-8859-1.
678 ignore;; 678 ignore;;
679 A file to read per-user ignore patterns from. This file should be 679 A file to read per-user ignore patterns from. This file should be
708 quiet;; 708 quiet;;
709 Reduce the amount of output printed. True or False. Default is False. 709 Reduce the amount of output printed. True or False. Default is False.
710 remotecmd;; 710 remotecmd;;
711 remote command to use for clone/push/pull operations. Default is 'hg'. 711 remote command to use for clone/push/pull operations. Default is 'hg'.
712 report_untrusted;; 712 report_untrusted;;
713 Warn if a .hg/hgrc file is ignored due to not being owned by a 713 Warn if a `.hg/hgrc` file is ignored due to not being owned by a
714 trusted user or group. True or False. Default is True. 714 trusted user or group. True or False. Default is True.
715 slash;; 715 slash;;
716 Display paths using a slash ("/") as the path separator. This only 716 Display paths using a slash ("/") as the path separator. This only
717 makes a difference on systems where the default path separator is 717 makes a difference on systems where the default path separator is
718 not the slash character (e.g. Windows uses the backslash character 718 not the slash character (e.g. Windows uses the backslash character
729 The timeout used when a lock is held (in seconds), a negative value 729 The timeout used when a lock is held (in seconds), a negative value
730 means no timeout. Default is 600. 730 means no timeout. Default is 600.
731 username;; 731 username;;
732 The committer of a changeset created when running "commit". 732 The committer of a changeset created when running "commit".
733 Typically a person's name and email address, e.g. "Fred Widget 733 Typically a person's name and email address, e.g. "Fred Widget
734 <fred@example.com>". Default is $EMAIL or username@hostname. If 734 <fred@example.com>". Default is `$EMAIL` or username@hostname. If
735 the username in hgrc is empty, it has to be specified manually or 735 the username in hgrc is empty, it has to be specified manually or
736 in a different hgrc file (e.g. $HOME/.hgrc, if the admin set 736 in a different hgrc file (e.g. `$HOME/.hgrc`, if the admin set
737 "username =" in the system hgrc). 737 "username =" in the system hgrc).
738 verbose;; 738 verbose;;
739 Increase the amount of output printed. True or False. Default is False. 739 Increase the amount of output printed. True or False. Default is False.
740 740
741 741
783 Base URL to use when publishing URLs in other locations, so 783 Base URL to use when publishing URLs in other locations, so
784 third-party tools like email notification hooks can construct 784 third-party tools like email notification hooks can construct
785 URLs. Example: "http://hgserver/repos/" 785 URLs. Example: "http://hgserver/repos/"
786 contact;; 786 contact;;
787 Name or email address of the person in charge of the repository. 787 Name or email address of the person in charge of the repository.
788 Defaults to ui.username or $EMAIL or "unknown" if unset or empty. 788 Defaults to ui.username or `$EMAIL` or "unknown" if unset or empty.
789 deny_push;; 789 deny_push;;
790 Whether to deny pushing to the repository. If empty or not set, 790 Whether to deny pushing to the repository. If empty or not set,
791 push is not denied. If the special value "*", all remote users are 791 push is not denied. If the special value "*", all remote users are
792 denied push. Otherwise, unauthenticated users are all denied, and 792 denied push. Otherwise, unauthenticated users are all denied, and
793 any authenticated user name present in this list (separated by 793 any authenticated user name present in this list (separated by