# Package org.eclipse.jgit.transport

Transport (fetch/push) for different protocols.

See: Description

Interface Summary
AdvertiseRefsHook: Hook to allow callers to take over advertising refs to the client.
Connection: Represent connection for operation on a remote repository.
FetchConnection: Lists known refs from the remote and copies objects of selected refs.
PackTransport: Marker interface an object transport using Git pack transfers.
PostReceiveHook: Hook invoked by `ReceivePack` after all updates are executed.
PreReceiveHook: Hook invoked by `ReceivePack` before any updates are executed.
PreUploadHook: Hook invoked by `UploadPack` before during critical phases.
PushConnection: Lists known refs from the remote and sends objects to the remote.
RefFilter: Filters the list of refs that are advertised to the client.
RemoteSession: Create a remote "session" for executing remote commands.
TransportBundle: Marker interface for transports that supports fetching from a git bundle (sneaker-net object transport).
UploadPack.RequestValidator: Validator for client requests.
UploadPackLogger: Logs activity that occurred within `UploadPack`.
WalkTransport: Marker interface for an object transport walking transport.

Class Summary
AbstractAdvertiseRefsHook: Implementation of `AdvertiseRefsHook` that advertises the same refs for upload-pack and receive-pack.
AdvertiseRefsHookChain: `AdvertiseRefsHook` that delegates to a list of other hooks.
AmazonS3: A simple HTTP REST client for the Amazon S3 service.
BaseConnection: Base helper class for implementing operations connections.
BasePackFetchConnection: Fetch implementation using the native Git pack transfer service.
BasePackPushConnection: Push implementation using the native Git pack transfer service.
BaseReceivePack: Base implementation of the side of a push connection that receives objects.
BaseReceivePack.FirstLine: Data in the first line of a request, the line itself plus capabilities.
BaseReceivePack.ReceiveConfig: Configuration for receive operations.
BundleWriter: Creates a Git bundle file, for sneaker-net transport to another system.
ChainingCredentialsProvider: A credentials provider chaining multiple credentials providers
CredentialItem: A credential requested from a `CredentialsProvider`.
CredentialItem.CharArrayType: An item whose value is stored as a char[] and is therefore clearable.
CredentialItem.InformationalMessage: An advice message presented to the user, with no response required.
CredentialItem.Password: Prompt for a password, which is masked on input.
CredentialItem.StringType: An item whose value is stored as a string.
CredentialItem.Username: Prompt for a username, which is not masked on input.
CredentialItem.YesNoType: An item whose value is a boolean choice, presented as Yes/No.
CredentialsProvider: Provide credentials for use in connecting to Git repositories.
CredentialsProviderUserInfo: A JSch `UserInfo` adapter for a `CredentialsProvider`.
Daemon: Basic daemon for the anonymous `git://` transport protocol.
DaemonClient: Active network client of `Daemon`.
DaemonService: A service exposed by `Daemon` over anonymous `git://`.
FetchResult: Final status after a successful fetch from a remote repository.
GitProtocolConstants: Wire constants for the native Git protocol.
HttpTransport: The base class for transports that use HTTP as underlying protocol.
JschConfigSessionFactory: The base session factory that loads known hosts and private keys from `$HOME/.ssh`.
JschSession: Run remote commands using Jsch.
NetRC: NetRC file parser.
NetRC.NetRCEntry: .netrc file entry
NetRCCredentialsProvider: Simple .netrc credentials provider.
OpenSshConfig: Simple configuration parser for the OpenSSH ~/.ssh/config file.
OpenSshConfig.Host: Configuration of one "Host" block in the configuration file.
OperationResult: Class holding result of operation on remote repository.
PackedObjectInfo: Description of an object stored in a pack file, including offset.
PacketLineIn: Read Git style pkt-line formatting from an input stream.
PacketLineOut: Write Git style pkt-line formatting to an output stream.
PackParser: Parses a pack stream and imports it for an `ObjectInserter`.
PackParser.ObjectTypeAndSize: Type and size information about an object in the database buffer.
PackParser.UnresolvedDelta: Information about an unresolved delta in this pack stream.
PostReceiveHookChain: `PostReceiveHook` that delegates to a list of other hooks.
PreReceiveHookChain: `PreReceiveHook` that delegates to a list of other hooks.
PreUploadHookChain: `PreUploadHook` that delegates to a list of other hooks.
PushResult: Result of push operation to the remote repository.
ReceiveCommand: A command being processed by `BaseReceivePack`.
ReceivePack: Implements the server side of a push connection, receiving objects.
RefAdvertiser: Support for the start of `UploadPack` and `ReceivePack`.
RefAdvertiser.PacketLineOutRefAdvertiser: Advertiser which frames lines in a `PacketLineOut` format.
RefSpec: Describes how refs in one repository copy into another repository.
RemoteConfig: A remembered remote repository, including URLs and RefSpecs.
RemoteRefUpdate: Represent request and status of a remote ref update.
SideBandOutputStream: Multiplexes data and progress messages.
SshSessionFactory: Creates and destroys SSH connections to a remote system.
SshTransport: The base class for transports that use SSH protocol.
TcpTransport: The base class for transports based on TCP sockets.
TrackingRefUpdate: Update of a locally stored tracking branch.
TransferConfig: The standard "transfer", "fetch", "receive", and "uploadpack" configuration parameters.
Transport: Connects two Git repositories together and copies objects between them.
TransportAmazonS3: Transport over the non-Git aware Amazon S3 protocol.
TransportBundleStream: Single shot fetch from a streamed Git bundle.
TransportGitSsh: Transport through an SSH tunnel.
TransportHttp: Transport over HTTP and FTP protocols.
TransportProtocol: Describes a way to connect to another Git repository.
TransportSftp: Transport over the non-Git aware SFTP (SSH based FTP) protocol.
UploadPack: Implements the server side of a fetch connection, transmitting objects.
UploadPack.AdvertisedRequestValidator: Validator corresponding to `UploadPack.RequestPolicy.ADVERTISED`.
UploadPack.AnyRequestValidator: Validator corresponding to `UploadPack.RequestPolicy.ANY`.
UploadPack.FirstLine: Data in the first line of a request, the line itself plus options.
UploadPack.ReachableCommitRequestValidator: Validator corresponding to `UploadPack.RequestPolicy.REACHABLE_COMMIT`.
UploadPack.ReachableCommitTipRequestValidator: Validator corresponding to `UploadPack.RequestPolicy.REACHABLE_COMMIT_TIP`.
UploadPack.TipRequestValidator: Validator corresponding to `UploadPack.RequestPolicy.TIP`.
UploadPackLoggerChain: `UploadPackLogger` that delegates to a list of other loggers.
URIish: This URI like construct used for referencing Git archives over the net, as well as locally stored archives.
UsernamePasswordCredentialsProvider: Simple `CredentialsProvider` that always uses the same information.

Enum Summary
PackParser.Source: Location data is being obtained from.
ReceiveCommand.Result: Result of the update command.
ReceiveCommand.Type: Type of operation requested.
RemoteRefUpdate.Status: Represent current status of a remote ref update.
TagOpt: Specification of annotated tag behavior during fetch.
Transport.Operation: Type of operation a Transport is being opened for.
TransportProtocol.URIishField: Fields within a `URIish` that a transport uses.
UploadPack.RequestPolicy: Policy the server uses to validate client requests

Exception Summary
RequestNotYetReadException: Indicates that a client request has not yet been read from the wire.
ServiceMayNotContinueException: Indicates a transport service may not continue execution.
UploadPackInternalServerErrorException: UploadPack has already reported an error to the client.
UploadPackMayNotContinueException: Deprecated use `ServiceMayNotContinueException` instead.

## Package org.eclipse.jgit.transport Description

Transport (fetch/push) for different protocols.