An artifact repository is a file and revisions management system you can push into and pull from.
There are three repository types:
Local – a physical, locally-managed repository into which you can deploy artifacts.
Remote – a caching proxy for a repository managed at a remote URL. Artifacts are stored and updated in remote repositories according to various configuration parameters that control the caching and proxying behavior. You can remove artifacts from a remote repository cache but you cannot actually deploy a new artifact into a remote repository.
Virtual – an aggregated repository (that combines the local and remote repositories) under a common URL, used to create controlled domains for search and resolution of artifacts.