There are different types of repositories based on location, version and projects.
1. Remote : A remote repository is a file system hosted by a web server that provides download access to the artifacts it contains.
2. Local : This is the repository on you local machine and specified in the settings.xml file in the .m2 directory. Location of .m2 directory will vary according to your installation, but be aware that this will be a hidden directory. Maven does not build on the remote repository and uses local repository to build on local machine. All the artefacts that Maven need are downloaded from the remote repository. localRepository tag in the setting.xml file specifies the location of local repository on the machine as specified in the following snippet.
3. Release and snapshot : Release and snapshot repositories are typically used to specify which artefacts are under development and which artifacts are stable, released and being used in production. For eg: If your organisation is using some component which is under development then the repository version is the snapshot and once you have tagged and released it could be in the released repository.
4. Internal and external repositories.: Any repository which uses the artefacts confined only to the project it is in is called internal repository. Anything outside the project is call external repository.