---
title: Appendix A. Obtaining FreeBSD
part: Part V. Appendices
prev: books/handbook/partv
next: books/handbook/bibliography
description: "How to get FreeBSD: CD and DVD sets, FTP sites and how to install and use Git"
tags: ["Obtaining", "CD", "DVD", "FTP", "Git"]
showBookMenu: true
weight: 41
params:
  path: "/books/handbook/mirrors/"
---

[appendix]
= Obtaining FreeBSD
:doctype: book
:toc: macro
:toclevels: 1
:icons: font
:sectnums:
:sectnumlevels: 6
:sectnumoffset: A
:partnums:
:source-highlighter: rouge
:experimental:
:images-path: books/handbook/mirrors/

ifdef::env-beastie[]
ifdef::backend-html5[]
:imagesdir: ../../../../images/{images-path}
endif::[]
ifndef::book[]
include::shared/authors.adoc[]
include::shared/mirrors.adoc[]
include::shared/releases.adoc[]
include::shared/attributes/attributes-{{% lang %}}.adoc[]
include::shared/{{% lang %}}/teams.adoc[]
include::shared/{{% lang %}}/mailing-lists.adoc[]
include::shared/{{% lang %}}/urls.adoc[]
toc::[]
endif::[]
ifdef::backend-pdf,backend-epub3[]
include::../../../../../shared/asciidoctor.adoc[]
endif::[]
endif::[]

ifndef::env-beastie[]
toc::[]
include::../../../../../shared/asciidoctor.adoc[]
endif::[]

[[mirrors]]
== Mirrors

The official mirrors of the FreeBSD project are made up of many machines operated by the project cluster administrators and behind GeoDNS to direct users to the closest available mirror.
Current locations are Australia, Brazil, Japan (two sites), Malaysia, South Africa, Sweden, Taiwan, United States of America (California - two sites, Illinois - two sites, New Jersey, and Washington).

Official mirrors service:

[cols="1,1,3"]
|===
| Service Name | Protocols | More information

| **cgit.FreeBSD.org**
| link:https://cgit.FreeBSD.org/[https]
| Web interface for the FreeBSD Git repositories.

| **docs.FreeBSD.org**
| link:https://docs.FreeBSD.org/[https]
| FreeBSD Documentation Portal.

| **download.FreeBSD.org**
| link:https://download.FreeBSD.org/[https] link:ftp://download.FreeBSD.org/pub/FreeBSD/[ftp]
| Same content as `ftp.FreeBSD.org`, `ftp` is a legacy name; `download.FreeBSD.org` is recommended.

| **git.FreeBSD.org**
| git over `https` and `ssh`
| More details on link:https://docs.freebsd.org/en/books/handbook/mirrors/#git[using git] section.

| **pkg.FreeBSD.org**
| man:pkg[8] over `http` and `https`
| Official FreeBSD package repositories used by the man:pkg[8] program.

| **vuxml.FreeBSD.org** / **www.VuXML.org**
| link:https://www.vuxml.org/[https]
| FreeBSD Project VuXML web page. `pkg audit` fetches the list of vulnerabilities from this service.

| **www.FreeBSD.org**
| link:https://www.FreeBSD.org/[https]
| FreeBSD Website.
|===

All official mirrors support IPv4 and IPv6.

http://ftp-archive.FreeBSD.org is not in the GeoDNS Infrastructure, hosted in only one location (US).

The project is looking for new locations; those willing to sponsor, please reach out to the Cluster Administrators team for more information.

link:https://www.fastly.com[Fastly] CDN is used to serve **download.FreeBSD.org** and **pkg.FreeBSD.org**, providing acceleration, caching, and global bandwidth distribution for FreeBSD images and packages.

Mirror list maintained by the community and other companies:

[cols="1,1,3"]
|===
|Country | Hostname | Protocols

| Australia icon:envelope[link=mailto:{mirrors-australia-email}, title="mirror contact"]
| ftp.au.FreeBSD.org
| link:http://ftp.au.FreeBSD.org/pub/FreeBSD[http] link:http://ftp.au.FreeBSD.org/pub/FreeBSD[http_v6] link:rsync://ftp.au.FreeBSD.org[rsync] link:rsync://ftp.au.FreeBSD.org[rsync_v6]

|
| ftp3.au.FreeBSD.org
| link:http://ftp3.au.FreeBSD.org/pub/FreeBSD[http] link:ftp://ftp3.au.FreeBSD.org/pub/FreeBSD[ftp] link:rsync://ftp3.au.FreeBSD.org[rsync]

| Brazil icon:envelope[link=mailto:{mirrors-brazil-email}, title="mirror contact"]
| ftp2.br.FreeBSD.org
| link:http://ftp2.br.FreeBSD.org/FreeBSD[http] link:rsync://ftp2.br.FreeBSD.org[rsync] link:rsync://ftp2.br.FreeBSD.org[rsync_v6]

|
| ftp3.br.FreeBSD.org
| link:http://ftp3.br.FreeBSD.org/pub/FreeBSD[http] link:ftp://ftp3.br.FreeBSD.org/pub/FreeBSD[ftp] link:rsync://ftp3.br.FreeBSD.org[rsync]

| Bulgaria icon:envelope[link=mailto:{mirrors-bulgaria-email}, title="mirror contact"]
| ftp.bg.FreeBSD.org
| link:ftp://ftp.bg.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp.bg.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp.bg.FreeBSD.org[rsync] link:rsync://ftp.bg.FreeBSD.org[rsync_v6]

| Czech Republic icon:envelope[link=mailto:{mirrors-czech-email}, title="mirror contact"]
| ftp.cz.FreeBSD.org
| link:http://ftp.cz.FreeBSD.org/pub/FreeBSD[http] link:http://ftp.cz.FreeBSD.org/pub/FreeBSD[http_v6] link:rsync://ftp.cz.FreeBSD.org[rsync] link:rsync://ftp.cz.FreeBSD.org[rsync_v6]

| Denmark icon:envelope[link=mailto:{mirrors-denmark-email}, title="mirror contact"]
| ftp.dk.FreeBSD.org
| link:http://ftp.dk.FreeBSD.org/FreeBSD/[http] link:http://ftp.dk.FreeBSD.org/FreeBSD/[http_v6] link:ftp://ftp.dk.FreeBSD.org/FreeBSD/[ftp] link:ftp://ftp.dk.FreeBSD.org/FreeBSD/[ftp_v6] link:rsync://ftp.dk.FreeBSD.org/FreeBSD/[rsync] link:rsync://ftp.dk.FreeBSD.org/FreeBSD/[rsync_v6]

| Finland icon:envelope[link=mailto:{mirrors-finland-email}, title="mirror contact"]
| ftp.fi.FreeBSD.org
| link:ftp://ftp.fi.FreeBSD.org/pub/FreeBSD[ftp]

| France icon:envelope[link=mailto:{mirrors-france-email}, title="mirror contact"]
| ftp.fr.FreeBSD.org
| link:http://ftp.fr.FreeBSD.org/pub/FreeBSD[http] link:http://ftp.fr.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp.fr.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp.fr.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp.fr.FreeBSD.org[rsync] link:rsync://ftp.fr.FreeBSD.org[rsync_v6]

|
| ftp3.fr.FreeBSD.org
| link:ftp://ftp3.fr.FreeBSD.org/pub/FreeBSD[ftp]

|
| ftp6.fr.FreeBSD.org
| link:http://ftp6.fr.FreeBSD.org/pub/FreeBSD[http] link:ftp://ftp6.fr.FreeBSD.org/pub/FreeBSD[ftp] link:rsync://ftp6.fr.FreeBSD.org[rsync]

| Germany icon:envelope[link=mailto:{mirrors-germany-email}, title="mirror contact"]
| ftp.de.FreeBSD.org
| link:http://ftp.de.FreeBSD.org/FreeBSD[http] link:http://ftp.de.FreeBSD.org/FreeBSD[http_v6] link:https://ftp.de.FreeBSD.org/FreeBSD[https] link:https://ftp.de.FreeBSD.org/FreeBSD[https_v6] link:ftp://ftp.de.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp.de.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp.de.FreeBSD.org/FreeBSD[rsync] link:rsync://ftp.de.FreeBSD.org/FreeBSD[rsync_v6]

|
| ftp1.de.FreeBSD.org
| link:http://ftp1.de.FreeBSD.org/pub/FreeBSD[http] link:http://ftp1.de.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp1.de.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp1.de.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp1.de.FreeBSD.org[rsync] link:rsync://ftp1.de.FreeBSD.org[rsync_v6]

|
| ftp2.de.FreeBSD.org
| link:http://ftp2.de.FreeBSD.org/pub/FreeBSD[http] link:http://ftp2.de.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp2.de.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp2.de.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp2.de.FreeBSD.org[rsync] link:rsync://ftp2.de.FreeBSD.org[rsync_v6]

|
| ftp5.de.FreeBSD.org
| link:ftp://ftp5.de.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp5.de.FreeBSD.org/pub/FreeBSD[ftp_v6]

|
| ftp7.de.FreeBSD.org
| link:http://ftp7.de.FreeBSD.org/pub/FreeBSD[http] link:http://ftp7.de.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp7.de.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp7.de.FreeBSD.org/pub/FreeBSD[ftp_v6]

| Greece icon:envelope[link=mailto:{mirrors-greece-email}, title="mirror contact"]
| ftp.gr.FreeBSD.org
| link:http://ftp.gr.FreeBSD.org/pub/FreeBSD[http] link:http://ftp.gr.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp.gr.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp.gr.FreeBSD.org/pub/FreeBSD[ftp_v6]

|
| ftp2.gr.FreeBSD.org
| link:http://ftp2.gr.FreeBSD.org/pub/FreeBSD[http] link:http://ftp2.gr.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp2.gr.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp2.gr.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp2.gr.FreeBSD.org[rsync]

| Japan icon:envelope[link=mailto:{mirrors-japan-email}, title="mirror contact"]
| ftp.jp.FreeBSD.org
| link:http://ftp.jp.FreeBSD.org/pub/FreeBSD[http] link:http://ftp.jp.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp.jp.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp.jp.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp.jp.FreeBSD.org[rsync] link:rsync://ftp.jp.FreeBSD.org[rsync_v6]

|
| ftp2.jp.FreeBSD.org
| link:ftp://ftp2.jp.FreeBSD.org/pub/FreeBSD[ftp] link:rsync://ftp2.jp.FreeBSD.org[rsync] link:rsync://ftp2.jp.FreeBSD.org[rsync_v6]

|
| ftp3.jp.FreeBSD.org
| link:http://ftp3.jp.FreeBSD.org/pub/FreeBSD[http] link:rsync://ftp3.jp.FreeBSD.org[rsync]

|
| ftp4.jp.FreeBSD.org
| link:ftp://ftp4.jp.FreeBSD.org/pub/FreeBSD[ftp]

|
| ftp6.jp.FreeBSD.org
| link:http://ftp6.jp.FreeBSD.org/pub/FreeBSD[http] link:http://ftp6.jp.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp6.jp.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp6.jp.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp6.jp.FreeBSD.org[rsync] link:rsync://ftp6.jp.FreeBSD.org[rsync_v6]

| Kazakhstan icon:envelope[link=mailto:support@ps.kz, title="mirror contact"]
| mirror.ps.kz
| http://mirror.ps.kz/freebsd[http] link:ftp://mirror.ps.kz/freebsd[ftp]

|
| mirror.neolabs.kz
| link:http://mirror.neolabs.kz/freebsd[http] link:ftp://mirror.neolabs.kz/freebsd[ftp]

| Korea icon:envelope[link=mailto:{mirrors-korea-email}, title="mirror contact"]
| ftp.kr.FreeBSD.org
| link:http://ftp.kr.FreeBSD.org/pub/FreeBSD[http] link:https://ftp.kr.FreeBSD.org/pub/FreeBSD[https] link:ftp://ftp.kr.FreeBSD.org/pub/FreeBSD[ftp] link:rsync://ftp.kr.FreeBSD.org[rsync]

|
| ftp2.kr.FreeBSD.org
| link:rsync://ftp2.kr.FreeBSD.org[rsync]

| Latvia icon:envelope[link=mailto:{mirrors-latvia-email}, title="mirror contact"]
| ftp.lv.FreeBSD.org
| link:http://ftp.lv.FreeBSD.org/freebsd[http] link:ftp://ftp.lv.FreeBSD.org/freebsd[ftp]

| Netherlands icon:envelope[link=mailto:{mirrors-netherlands-email}, title="mirror contact"]
| ftp.nl.FreeBSD.org
| link:http://ftp.nl.FreeBSD.org/pub/FreeBSD[http] link:http://ftp.nl.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp.nl.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp.nl.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp.nl.FreeBSD.org[rsync] link:rsync://ftp.nl.FreeBSD.org[rsync_v6]

|
| ftp2.nl.FreeBSD.org
| link:http://ftp2.nl.FreeBSD.org/pub/FreeBSD[http] link:ftp://ftp2.nl.FreeBSD.org/pub/FreeBSD[ftp] link:rsync://ftp2.nl.FreeBSD.org[rsync]

|
| mirror.nl.altushost.com
| link:https://mirror.nl.altushost.com/FreeBSD[https]

| New Zealand icon:envelope[link=mailto:{mirrors-new-zealand-email}, title="mirror contact"]
| ftp.nz.FreeBSD.org
| link:http://ftp.nz.FreeBSD.org/pub/FreeBSD[http] link:ftp://ftp.nz.FreeBSD.org/pub/FreeBSD[ftp]

| Norway icon:envelope[link=mailto:{mirrors-norway-email}, title="mirror contact"]
| ftp.no.FreeBSD.org
| link:ftp://ftp.no.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp.no.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp.no.FreeBSD.org[rsync] link:rsync://ftp.no.FreeBSD.org[rsync_v6]

| Poland icon:envelope[link=mailto:{mirrors-poland-email}, title="mirror contact"]
| ftp.pl.FreeBSD.org
| link:http://ftp.pl.FreeBSD.org/pub/FreeBSD[http] link:http://ftp.pl.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp.pl.FreeBSD.org/pub/FreeBSD[ftp] link:rsync://ftp.pl.FreeBSD.org[rsync] link:rsync://ftp.pl.FreeBSD.org[rsync_v6]

| Russia icon:envelope[link=mailto:{mirrors-russia-email}, title="mirror contact"]
| ftp.ru.FreeBSD.org
| link:http://ftp.ru.FreeBSD.org/pub/FreeBSD[http] link:http://ftp.ru.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp.ru.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp.ru.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp.ru.FreeBSD.org[rsync] link:rsync://ftp.ru.FreeBSD.org[rsync_v6]

|
| ftp2.ru.FreeBSD.org
| link:https://ftp2.ru.FreeBSD.org/pub/FreeBSD[https] link:ftp://ftp2.ru.FreeBSD.org/pub/FreeBSD[ftp] link:rsync://ftp2.ru.FreeBSD.org[rsync]

| Slovenia icon:envelope[link=mailto:{mirrors-slovenia-email}, title="mirror contact"]
| ftp.si.FreeBSD.org
| link:http://ftp.si.FreeBSD.org/pub/FreeBSD[http] link:http://ftp.si.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp.si.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp.si.FreeBSD.org/pub/FreeBSD[ftp_v6]

| South Africa icon:envelope[link=mailto:{mirrors-south-africa-email}, title="mirror contact"]
| ftp2.za.FreeBSD.org
| link:http://ftp2.za.FreeBSD.org/pub/FreeBSD[http] link:http://ftp2.za.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp2.za.FreeBSD.org/pub/FreeBSD[ftp_v6]

|
| ftp4.za.FreeBSD.org
| link:http://ftp4.za.FreeBSD.org/pub/FreeBSD[http] link:ftp://ftp4.za.FreeBSD.org/pub/FreeBSD[ftp] link:rsync://ftp4.za.FreeBSD.org[rsync]

| Sweden icon:envelope[link=mailto:{mirrors-sweden-email}, title="mirror contact"]
| ftp.se.FreeBSD.org
| link:http://ftp.se.FreeBSD.org/pub/FreeBSD[http] link:http://ftp.se.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp.se.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp.se.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp.se.FreeBSD.org[rsync] link:rsync://ftp.se.FreeBSD.org[rsync_v6]

|
| mirror.se.altushost.com
| link:https://mirror.se.altushost.com/FreeBSD[https]

| Taiwan icon:envelope[link=mailto:{mirrors-taiwan-email}, title="mirror contact"]
| ftp4.tw.FreeBSD.org
| link:https://ftp4.tw.FreeBSD.org/pub/FreeBSD[https] link:ftp://ftp4.tw.FreeBSD.org/pub/FreeBSD[ftp] link:rsync://ftp4.tw.FreeBSD.org[rsync]

|
| ftp5.tw.FreeBSD.org
| link:http://ftp5.tw.FreeBSD.org/pub/FreeBSD[http] link:ftp://ftp5.tw.FreeBSD.org/pub/FreeBSD[ftp]

| Ukraine icon:envelope[link=mailto:{mirrors-ukraine-email}, title="mirror contact"]
| ftp.ua.FreeBSD.org
| link:http://ftp.ua.FreeBSD.org/pub/FreeBSD[http] link:ftp://ftp.ua.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp.ua.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp.ua.FreeBSD.org[rsync] link:rsync://ftp.ua.FreeBSD.org[rsync_v6]

| United Kingdom icon:envelope[link=mailto:{mirrors-uk-email}, title="mirror contact"]
| ftp.uk.FreeBSD.org
| link:http://ftp.uk.FreeBSD.org/pub/FreeBSD[http] link:http://ftp.uk.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp.uk.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp.uk.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp.uk.FreeBSD.org[rsync] link:rsync://ftp.uk.FreeBSD.org[rsync_v6]

|
| ftp2.uk.FreeBSD.org
| link:http://ftp2.uk.FreeBSD.org/pub/FreeBSD[http] link:http://ftp2.uk.FreeBSD.org/pub/FreeBSD[http_v6] link:https://ftp2.uk.FreeBSD.org/pub/FreeBSD[https] link:https://ftp2.uk.FreeBSD.org/pub/FreeBSD[https_v6] link:ftp://ftp2.uk.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp2.uk.FreeBSD.org/pub/FreeBSD[ftp_v6]

| United States of America icon:envelope[link=mailto:{mirrors-us-email}, title="mirror contact"]
| ftp11.FreeBSD.org
| link:http://ftp11.FreeBSD.org/pub/FreeBSD[http] link:http://ftp11.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp11.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp11.FreeBSD.org/pub/FreeBSD[ftp_v6] link:rsync://ftp11.FreeBSD.org[rsync] link:rsync://ftp11.FreeBSD.org[rsync_v6]

|
| ftp14.FreeBSD.org
| link:ftp://ftp14.FreeBSD.org/pub/FreeBSD[ftp] link:rsync://ftp14.FreeBSD.org[rsync] (Former official tier 1)

|
| ftp5.FreeBSD.org
| link:http://ftp5.FreeBSD.org/pub/FreeBSD[http] link:http://ftp5.FreeBSD.org/pub/FreeBSD[http_v6] link:ftp://ftp5.FreeBSD.org/pub/FreeBSD[ftp] link:ftp://ftp5.FreeBSD.org/pub/FreeBSD[ftp_v6]
|===

The current list of protocols supported by the community mirrors was last updated on 2022-01-31, and it's not guaranteed.

[[git]]
== Using Git

[[git-intro]]
=== Introduction

As of December 2020, FreeBSD uses git as the primary version control system for storing all of FreeBSD's base source code and documentation.
As of April 2021, FreeBSD uses git as the only version control system for storing all of FreeBSD's Ports Collection.

[NOTE]
====
Git is generally a developer tool.
Users may prefer to use `freebsd-update` (crossref:cutting-edge[updating-upgrading-freebsdupdate,“FreeBSD Update”]) to update the FreeBSD base system.
====

This section demonstrates how to install Git on a FreeBSD system and use it to create a local copy of a FreeBSD source code repository.

[[git-install]]
=== Installation

Git can be installed from the Ports Collection, or as a package:

[source,shell]
....
# pkg install git
....

[[git-usage]]
=== Running Git

To fetch a clean copy of the sources into a local directory, use `git clone`.
This directory of files is called the _working tree_.

Git uses URLs to designate a repository.
There are three different repositories, `src` for the FreeBSD system source code, `doc` for documentation, and `ports` for the FreeBSD Ports Collection.
All three are reachable over two different protocols: HTTPS and SSH.
For example, the URL `https://git.FreeBSD.org/src.git` specifies the main branch of the `src` repository, using the `https` protocol.

[[git-url-table]]
.FreeBSD Git Repository URL Table
[options="header,footer"]
|=======================================================
|Item | Git URL
| Read-only src repo via HTTPS             | `https://git.FreeBSD.org/src.git`
| Read-only src repo via anon-ssh          | `ssh://anongit@git.FreeBSD.org/src.git`
| Read-only doc repo via HTTPS             | `https://git.FreeBSD.org/doc.git`
| Read-only doc repo via anon-ssh          | `ssh://anongit@git.FreeBSD.org/doc.git`
| Read-only ports repo via HTTPS           | `https://git.FreeBSD.org/ports.git`
| Read-only ports repo via anon-ssh        | `ssh://anongit@git.FreeBSD.org/ports.git`
|=======================================================

External mirrors maintained by project members are also available; please refer
to the crossref:mirrors[external-mirrors, External mirrors] section.

To clone a copy of the FreeBSD system source code repository:

[source,shell]
....
# git clone -o freebsd https://git.FreeBSD.org/src.git /usr/src
....

The `-o freebsd` option specifies the origin; by convention in the FreeBSD documentation, the origin is assumed to be `freebsd`.
Because the initial checkout must download the full branch of the remote repository, it can take a while.
Please be patient.

Initially, the working tree contains source code for the `main` branch, which corresponds to CURRENT.
To switch to 13-STABLE instead:
[source,shell]
....
# cd /usr/src
# git checkout stable/13
....

The working tree can be updated with `git pull`.
To update [.filename]#/usr/src# created in the example above, use:

[source,shell]
....
# cd /usr/src
# git pull --rebase
....

The update is much quicker than a checkout, only transferring files that have changed.

=== Web-based repository browser

The FreeBSD project uses cgit as the web-based repository browser: link:https://cgit.FreeBSD.org/[https://cgit.FreeBSD.org/].

=== For Developers

For information about write access to repositories see the extref:{committers-guide}[Committer's Guide, git-mini-primer].

[[external-mirrors]]
=== External mirrors

Those mirrors are not hosted in FreeBSD.org but still maintained by the project members.
Users and developers are welcome to pull or browse repositories on those mirrors.
Pull requests for the `doc` and `src` GitHub repositories are being accepted; otherwise, the project workflow with those mirrors is still under discussion.

Codeberg::
  - doc: https://codeberg.org/FreeBSD/freebsd-doc
  - ports: https://codeberg.org/FreeBSD/freebsd-ports
  - src: https://codeberg.org/FreeBSD/freebsd-src

GitHub::
  - doc: https://github.com/freebsd/freebsd-doc
  - ports: https://github.com/freebsd/freebsd-ports
  - src: https://github.com/freebsd/freebsd-src

GitLab::
  - doc: https://gitlab.com/FreeBSD/freebsd-doc
  - ports: https://gitlab.com/FreeBSD/freebsd-ports
  - src: https://gitlab.com/FreeBSD/freebsd-src

=== Mailing lists

The main mailing list for general usage and questions about git in the FreeBSD project is https://lists.freebsd.org/subscription/freebsd-git[freebsd-git].
For more details, including commit messages lists, see the crossref:handbook/eresources[eresources-mail, Mailing Lists] chapter.

=== SSH host keys

* gitrepo.FreeBSD.org host key fingerprints:
** ECDSA key fingerprint is `SHA256:seWO5D27ySURcx4bknTNKlC1mgai0whP443PAKEvvZA`
** ED25519 key fingerprint is `SHA256:lNR6i4BEOaaUhmDHBA1WJsO7H3KtvjE2r5q4sOxtIWo`
** RSA key fingerprint is `SHA256:f453CUEFXEJAXlKeEHV+ajJfeEfx9MdKQUD7lIscnQI`

* git.FreeBSD.org host key fingerprints:
** ECDSA key fingerprint is `SHA256:/UlirUAsGiitupxmtsn7f9b7zCWd0vCs4Yo/tpVWP9w`
** ED25519 key fingerprint is `SHA256:y1ljKrKMD3lDObRUG3xJ9gXwEIuqnh306tSyFd1tuZE`
** RSA key fingerprint is `SHA256:jBe6FQGoH4HjvrIVM23dcnLZk9kmpdezR/CvQzm7rJM`

These are also published as SSHFP records in DNS.

[[mirrors-disc]]
== Disc Copies

FreeBSD disc copies are available from several online retailers:

* Getlinux +
Website: https://www.getlinux.fr/

* Dr. Hinner EDV +
Schäftlarnstr. 10 // 4. Stock +
D-81371 München +
Germany +
Phone: +49 171 417 544 6 +
Email: infow@hinner.de +
Website: http://www.hinner.de/linux/freebsd.html
