The ports collection uses Makefiles arranged in a directory hierarchy so that software can be built, installed and uninstalled with the make command.
In most cases the software is automatically downloaded from the Internet, patched and configured if necessary, then compiled, installed and registered in the package database.
Today, many ports are maintained by special task forces or sub-projects, each with a dedicated mailing list (e.g. kde@FreeBSD.org, java@FreeBSD.org, etc.
FreeBSD maintains a build farm called the pointyhat cluster in which all packages for all supported architectures and major releases are built.
In most cases a package created for an older version of FreeBSD can be installed and used on a newer system without difficulty since binary backward compatibility across major releases is enabled by default.
[7] Jordan Hubbard committed his port make macros to the FreeBSD CVS repository on August 21, 1994.
John Marino of DragonFly BSD project created DeltaPorts repository – a collection of patches and files that overlay and modify the FreeBSD Ports, in order to generate DPorts.