This section describes the general procedures of the FreeBSD
    release cycle from the head/ branch.
Starting with the FreeBSD 10.0-RELEASE cycle, the notion
      of “ALPHA” builds was
      introduced.  Unlike the BETA and
      RC builds, ALPHA builds
      are not included in the FreeBSD Release schedule.
The idea behind ALPHA builds is to
      provide regular FreeBSD-provided builds before the creation of the
      stable/ branch.
FreeBSD ALPHA snapshots should be built
      approximately once a week.
For the first ALPHA build, the
      BRANCH value in
      sys/conf/newvers.sh needs to be changed
      from CURRENT to ALPHA1.
      For subsequent ALPHA builds, increment each
      ALPHA value by
      one.N
See Section 7, “Building FreeBSD Installation Media” for information on
      building the ALPHA images.
When creating the stable/ branch, several changes
      are required in both the new stable/ branch and the
      head/ branch.  The files listed are relative to the
      repository root.  To create the new stable/ branch
      in Subversion:12/
%svn cp ^/headstable/12/
Once the stable/ branch has been committed, make
      the following edits:12/
| File to Edit | What to Change | 
|---|---|
stable/ | Update the FreeBSD version, and remove the notice
	      about WITNESS | 
stable/ | #ifndef MALLOC_PRODUCTION #define MALLOC_PRODUCTION #endif  | 
stable/ | Uncomment -DNDEBUG | 
stable/ | Remove debugging support | 
stable/ | Remove debugging support | 
stable/ | Update SRCBRANCH | 
stable/ | Remove these kernel configurations | 
stable/ | Remove debugging options | 
stable/ | Update the BRANCH value to
	      reflect BETA1 | 
stable/ | Move REPRODUCIBLE_BUILD from
	      __DEFAULT_NO_OPTIONS to
	      __DEFAULT_YES_OPTIONS | 
stable/ | Move LLVM_ASSERTIONS from
	      __DEFAULT_YES_OPTIONS to
	      __DEFAULT_NO_OPTIONS (FreeBSD 13.x
		and later only) | 
stable/ | Set dumpdev from
	      AUTO to NO (it is
	      configurable via bsdinstall(8) for those that want
	      it enabled by default) | 
stable/ | Remove the
	      debug.witness.trace entries | 
Then in the head/ branch, which will now become
      a new major version:
| File to Edit | What to Change | 
|---|---|
head/UPDATING | Update the FreeBSD version | 
head/sys/conf/newvers.sh | Update the BRANCH value to
	      reflect CURRENT, and increment
	      REVISION | 
head/Makefile.inc1 | Update TARGET_TRIPLE and
	      MACHINE_TRIPLE | 
head/sys/sys/param.h | Update __FreeBSD_version | 
head/gnu/usr.bin/cc/cc_tools/freebsd-native.h | Update FBSD_MAJOR and
	      FBSD_CC_VER | 
head/contrib/gcc/config.gcc | Append the
	      freebsd<version>.h
	      section | 
head/lib/clang/llvm.build.mk | Update the value of
	      OS_VERSION | 
head/lib/clang/freebsd_cc_version.h | Update
	      FREEBSD_CC_VERSION | 
head/lib/clang/include/lld/Common/Version.inc | Update
	      LLD_REVISION_STRING | 
head/Makefile.libcompat | Update LILB32CPUFLAGS | 
All FreeBSD documents are available for download at https://download.freebsd.org/ftp/doc/
Questions that are not answered by the
    documentation may be
    sent to <freebsd-questions@FreeBSD.org>.
    Send questions about this document to <freebsd-doc@FreeBSD.org>.