namespace LibGit2Sharp
{
///
/// Collection of parameters controlling Fetch behavior.
///
public sealed class FetchOptions : FetchOptionsBase
{
///
/// Specifies the tag-following behavior of the fetch operation.
///
/// If not set, the fetch operation will follow the default behavior for the
/// based on the remote's configuration.
///
/// If neither this property nor the remote `tagopt` configuration is set,
/// this will default to (i.e. tags that point to objects
/// retrieved during this fetch will be retrieved as well).
///
public TagFetchMode? TagFetchMode { get; set; }
///
/// Specifies the pruning behaviour for the fetch operation
///
/// If not set, the configuration's setting will take effect. If true, the branches which no longer
/// exist on the remote will be removed from the remote-tracking branches.
///
///
public bool? Prune { get; set; }
///
/// Get/Set the custom headers.
///
///
/// This allows you to set custom headers (e.g. X-Forwarded-For,
/// X-Request-Id, etc),
///
///
///
/// Libgit2 sets some headers for HTTP requests (User-Agent, Host,
/// Accept, Content-Type, Transfer-Encoding, Content-Length, Accept) that
/// cannot be overriden.
///
///
/// var fetchOptions - new FetchOptions() {
/// CustomHeaders = new String[] {"X-Request-Id: 12345"}
/// };
///
/// The custom headers string array
public string[] CustomHeaders { get; set; }
}
}