
Currently if we want to have a remote/HEAD locally that is different from the one on the remote, but we still want to get a warning if remote changes HEAD, our only option is to have an indiscriminate warning with "follow_remote_head" set to "warn". Add a new option "warn-if-not-$branch", where $branch is a branch name we do not wish to get a warning about. If the remote HEAD is $branch do not warn, otherwise, behave as "warn". E.g. let's assume, that our remote origin has HEAD set to "master", but locally we have "git remote set-head origin seen". Setting 'remote.origin.followRemoteHEAD = "warn"' will always print a warning, even though the remote has not changed HEAD from "master". Setting 'remote.origin.followRemoteHEAD = "warn-if-not-master" will squelch the warning message, unless the remote changes HEAD from "master". Note, that should the remote change HEAD to "seen" (which we have locally), there will still be no warning. Improve the advice message in report_set_head to also include silencing the warning message with "warn-if-not-$branch". Signed-off-by: Bence Ferdinandy <bence@ferdinandy.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
122 lines
5.1 KiB
Plaintext
122 lines
5.1 KiB
Plaintext
remote.pushDefault::
|
|
The remote to push to by default. Overrides
|
|
`branch.<name>.remote` for all branches, and is overridden by
|
|
`branch.<name>.pushRemote` for specific branches.
|
|
|
|
remote.<name>.url::
|
|
The URL of a remote repository. See linkgit:git-fetch[1] or
|
|
linkgit:git-push[1]. A configured remote can have multiple URLs;
|
|
in this case the first is used for fetching, and all are used
|
|
for pushing (assuming no `remote.<name>.pushurl` is defined).
|
|
Setting this key to the empty string clears the list of urls,
|
|
allowing you to override earlier config.
|
|
|
|
remote.<name>.pushurl::
|
|
The push URL of a remote repository. See linkgit:git-push[1].
|
|
If a `pushurl` option is present in a configured remote, it
|
|
is used for pushing instead of `remote.<name>.url`. A configured
|
|
remote can have multiple push URLs; in this case a push goes to
|
|
all of them. Setting this key to the empty string clears the
|
|
list of urls, allowing you to override earlier config.
|
|
|
|
remote.<name>.proxy::
|
|
For remotes that require curl (http, https and ftp), the URL to
|
|
the proxy to use for that remote. Set to the empty string to
|
|
disable proxying for that remote.
|
|
|
|
remote.<name>.proxyAuthMethod::
|
|
For remotes that require curl (http, https and ftp), the method to use for
|
|
authenticating against the proxy in use (probably set in
|
|
`remote.<name>.proxy`). See `http.proxyAuthMethod`.
|
|
|
|
remote.<name>.fetch::
|
|
The default set of "refspec" for linkgit:git-fetch[1]. See
|
|
linkgit:git-fetch[1].
|
|
|
|
remote.<name>.push::
|
|
The default set of "refspec" for linkgit:git-push[1]. See
|
|
linkgit:git-push[1].
|
|
|
|
remote.<name>.mirror::
|
|
If true, pushing to this remote will automatically behave
|
|
as if the `--mirror` option was given on the command line.
|
|
|
|
remote.<name>.skipDefaultUpdate::
|
|
A deprecated synonym to `remote.<name>.skipFetchAll` (if
|
|
both are set in the configuration files with different
|
|
values, the value of the last occurrence will be used).
|
|
|
|
remote.<name>.skipFetchAll::
|
|
If true, this remote will be skipped when updating
|
|
using linkgit:git-fetch[1], the `update` subcommand of
|
|
linkgit:git-remote[1], and ignored by the prefetch task
|
|
of `git maintenance`.
|
|
|
|
remote.<name>.receivepack::
|
|
The default program to execute on the remote side when pushing. See
|
|
option --receive-pack of linkgit:git-push[1].
|
|
|
|
remote.<name>.uploadpack::
|
|
The default program to execute on the remote side when fetching. See
|
|
option --upload-pack of linkgit:git-fetch-pack[1].
|
|
|
|
remote.<name>.tagOpt::
|
|
Setting this value to --no-tags disables automatic tag following when
|
|
fetching from remote <name>. Setting it to --tags will fetch every
|
|
tag from remote <name>, even if they are not reachable from remote
|
|
branch heads. Passing these flags directly to linkgit:git-fetch[1] can
|
|
override this setting. See options --tags and --no-tags of
|
|
linkgit:git-fetch[1].
|
|
|
|
remote.<name>.vcs::
|
|
Setting this to a value <vcs> will cause Git to interact with
|
|
the remote with the git-remote-<vcs> helper.
|
|
|
|
remote.<name>.prune::
|
|
When set to true, fetching from this remote by default will also
|
|
remove any remote-tracking references that no longer exist on the
|
|
remote (as if the `--prune` option was given on the command line).
|
|
Overrides `fetch.prune` settings, if any.
|
|
|
|
remote.<name>.pruneTags::
|
|
When set to true, fetching from this remote by default will also
|
|
remove any local tags that no longer exist on the remote if pruning
|
|
is activated in general via `remote.<name>.prune`, `fetch.prune` or
|
|
`--prune`. Overrides `fetch.pruneTags` settings, if any.
|
|
+
|
|
See also `remote.<name>.prune` and the PRUNING section of
|
|
linkgit:git-fetch[1].
|
|
|
|
remote.<name>.promisor::
|
|
When set to true, this remote will be used to fetch promisor
|
|
objects.
|
|
|
|
remote.<name>.partialclonefilter::
|
|
The filter that will be applied when fetching from this promisor remote.
|
|
Changing or clearing this value will only affect fetches for new commits.
|
|
To fetch associated objects for commits already present in the local object
|
|
database, use the `--refetch` option of linkgit:git-fetch[1].
|
|
|
|
remote.<name>.serverOption::
|
|
The default set of server options used when fetching from this remote.
|
|
These server options can be overridden by the `--server-option=` command
|
|
line arguments.
|
|
|
|
remote.<name>.followRemoteHEAD::
|
|
How linkgit:git-fetch[1] should handle updates to `remotes/<name>/HEAD`.
|
|
The default value is "create", which will create `remotes/<name>/HEAD`
|
|
if it exists on the remote, but not locally, but will not touch an
|
|
already existing local reference. Setting to "warn" will print
|
|
a message if the remote has a different value, than the local one and
|
|
in case there is no local reference, it behaves like "create".
|
|
A variant on "warn" is "warn-if-not-$branch", which behaves like
|
|
"warn", but if `HEAD` on the remote is `$branch` it will be silent.
|
|
Setting to "always" will silently update it to the value on the remote.
|
|
Finally, setting it to "never" will never change or create the local
|
|
reference.
|
|
+
|
|
This is a multi-valued variable, and an empty value can be used in a higher
|
|
priority configuration file (e.g. `.git/config` in a repository) to clear
|
|
the values inherited from a lower priority configuration files (e.g.
|
|
`$HOME/.gitconfig`).
|