# pkg install git
附录 A. 获取 FreeBSD
目录
A.1. 镜像
FreeBSD 项目的官方镜像由项目集群管理员运营的许多机器组成,并使用 GeoDNS 将用户引导到最近的可用镜像。当前位置包括澳大利亚、巴西、德国、日本(两个站点)、马来西亚、南非、瑞典、台湾、英国、美国(加利福尼亚州、新泽西州和华盛顿州)。
官方镜像服务
服务名称 | 协议 | 更多信息 |
---|---|---|
docs.FreeBSD.org | FreeBSD 文档门户。 | |
download.FreeBSD.org | 与 | |
git.FreeBSD.org | 通过 | 更多详细信息请参阅 使用 git 部分。 |
pkg.FreeBSD.org | pkg(8) 通过 | 由 pkg(8) 程序使用的官方 FreeBSD 软件包存储库。 |
vuxml.FreeBSD.org / www.VuXML.org | FreeBSD 项目 VuXML 网页。 | |
www.FreeBSD.org | FreeBSD 网站。 |
所有官方镜像都支持 IPv4 和 IPv6。
http://ftp-archive.FreeBSD.org 不在 GeoDNS 基础设施中,仅在一个位置(美国)托管。
该项目正在寻找新的位置;愿意赞助的人员,请联系集群管理员团队以获取更多信息。
社区和其他公司维护的镜像列表
国家 | 主机名 | 协议 |
---|---|---|
ftp.au.FreeBSD.org | ||
ftp3.au.FreeBSD.org | ||
ftp.at.FreeBSD.org | ||
ftp2.br.FreeBSD.org | ||
ftp3.br.FreeBSD.org | ||
ftp.bg.FreeBSD.org | ||
ftp.cz.FreeBSD.org | ||
ftp.dk.FreeBSD.org | ||
ftp.fi.FreeBSD.org | ||
ftp.fr.FreeBSD.org | ||
ftp3.fr.FreeBSD.org | ||
ftp6.fr.FreeBSD.org | ||
ftp.de.FreeBSD.org | ||
ftp1.de.FreeBSD.org | ||
ftp2.de.FreeBSD.org | ||
ftp5.de.FreeBSD.org | ||
ftp7.de.FreeBSD.org | ||
ftp.gr.FreeBSD.org | ||
ftp2.gr.FreeBSD.org | ||
ftp.jp.FreeBSD.org | ||
ftp2.jp.FreeBSD.org | ||
ftp3.jp.FreeBSD.org | ||
ftp4.jp.FreeBSD.org | ||
ftp6.jp.FreeBSD.org | ||
mirror.ps.kz | ||
mirror.neolabs.kz | ||
ftp.kr.FreeBSD.org | ||
ftp2.kr.FreeBSD.org | ||
ftp.lv.FreeBSD.org | ||
ftp.nl.FreeBSD.org | ||
ftp2.nl.FreeBSD.org | ||
mirror.nl.altushost.com | ||
ftp.nz.FreeBSD.org | ||
ftp.no.FreeBSD.org | ||
ftp.pl.FreeBSD.org | ||
ftp.ru.FreeBSD.org | ||
ftp2.ru.FreeBSD.org | ||
ftp.si.FreeBSD.org | ||
ftp.za.FreeBSD.org | ||
ftp2.za.FreeBSD.org | ||
ftp4.za.FreeBSD.org | ||
ftp.se.FreeBSD.org | ||
mirror.se.altushost.com | ||
ftp4.tw.FreeBSD.org | ||
ftp5.tw.FreeBSD.org | ||
ftp.ua.FreeBSD.org | ||
ftp.uk.FreeBSD.org | ||
ftp2.uk.FreeBSD.org | ||
ftp11.FreeBSD.org | ||
ftp14.FreeBSD.org | ||
ftp5.FreeBSD.org |
社区镜像支持的协议列表最后更新于 2022-01-31,不保证其准确性。
A.2. 使用 Git
A.2.1. 简介
截至 2020 年 12 月,FreeBSD 使用 git 作为存储所有 FreeBSD 基础源代码和文档的主要版本控制系统。截至 2021 年 4 月,FreeBSD 使用 git 作为存储所有 FreeBSD Ports 集合的唯一版本控制系统。
Git 通常是开发人员的工具。用户可能更喜欢使用 |
本节演示如何在 FreeBSD 系统上安装 Git 并使用它创建 FreeBSD 源代码存储库的本地副本。
A.2.3. 运行 Git
要将源代码的干净副本获取到本地目录,请使用 git clone
。此文件目录称为工作树。
Git 使用 URL 来指定存储库。有三个不同的存储库,src
用于 FreeBSD 系统源代码,doc
用于文档,ports
用于 FreeBSD Ports 集合。所有三个都可以通过两种不同的协议访问:HTTPS 和 SSH。例如,URL https://git.FreeBSD.org/src.git
指定了 src
存储库的主分支,使用 https
协议。
项目 | Git URL |
---|---|
通过 HTTPS 访问只读 src 存储库 | |
通过匿名 SSH 访问只读 src 存储库 |
|
通过 HTTPS 访问只读 doc 存储库 | |
通过匿名 SSH 访问只读 doc 存储库 |
|
通过 HTTPS 访问只读 ports 存储库 | |
通过匿名 SSH 访问只读 ports 存储库 |
|
项目成员维护的外部镜像也可用;请参阅外部镜像部分。
克隆 FreeBSD 系统源代码存储库的副本
# git clone -o freebsd https://git.FreeBSD.org/src.git /usr/src
-o freebsd
选项指定了源;按照 FreeBSD 文档中的约定,源假定为 freebsd
。由于初始检出必须下载远程存储库的完整分支,因此可能需要一段时间。请耐心等待。
最初,工作树包含 main
分支的源代码,对应于 CURRENT。要切换到 13-STABLE,请使用
# cd /usr/src
# git checkout stable/13
工作树可以使用 git pull
更新。要更新上面示例中创建的 /usr/src,请使用
# cd /usr/src
# git pull --rebase
更新比检出快得多,只传输已更改的文件。
A.2.4. 基于 Web 的存储库浏览器
FreeBSD 项目使用 cgit 作为基于 Web 的存储库浏览器:https://cgit.FreeBSD.org/。
A.2.5. 针对开发者
有关存储库写入访问权限的信息,请参阅提交者指南。
A.2.6. 外部镜像
这些镜像不是托管在 FreeBSD.org 上,但仍然由项目成员维护。用户和开发人员都欢迎在这些镜像上拉取或浏览存储库。正在接受 doc
和 src
GitHub 存储库的拉取请求;否则,与这些镜像的项目工作流程仍在讨论中。
- Codeberg
- GitHub
- GitLab
A.2.7. 邮件列表
FreeBSD 项目中关于 git 的一般使用和问题的邮件列表是 freebsd-git。有关更多详细信息,包括提交消息列表,请参阅邮件列表章节。
A.2.8. SSH 主机密钥
gitrepo.FreeBSD.org 主机密钥指纹
ECDSA 密钥指纹为
SHA256:seWO5D27ySURcx4bknTNKlC1mgai0whP443PAKEvvZA
ED25519 密钥指纹为
SHA256:lNR6i4BEOaaUhmDHBA1WJsO7H3KtvjE2r5q4sOxtIWo
RSA 密钥指纹为
SHA256:f453CUEFXEJAXlKeEHV+ajJfeEfx9MdKQUD7lIscnQI
git.FreeBSD.org 主机密钥指纹
ECDSA 密钥指纹为
SHA256:/UlirUAsGiitupxmtsn7f9b7zCWd0vCs4Yo/tpVWP9w
ED25519 密钥指纹为
SHA256:y1ljKrKMD3lDObRUG3xJ9gXwEIuqnh306tSyFd1tuZE
RSA 密钥指纹为
SHA256:jBe6FQGoH4HjvrIVM23dcnLZk9kmpdezR/CvQzm7rJM
这些也作为 DNS 中的 SSHFP 记录发布。
A.3. 使用 Subversion
A.3.1. 简介
截至 2020 年 12 月,FreeBSD 使用 git 作为存储所有 FreeBSD 源代码和文档的主要版本控制系统。来自 stable/11
、stable/12
和相关 releng 分支的 git 存储库的更改将导出到 Subversion 存储库。此导出将在这些分支的生命周期内继续进行。从 2012 年 7 月到 2021 年 3 月,FreeBSD 使用 Subversion 作为存储所有 FreeBSD Ports 集合的唯一版本控制系统。截至 2021 年 4 月,FreeBSD 使用 git 作为存储所有 FreeBSD Ports 集合的唯一版本控制系统。
Subversion 通常是开发人员的工具。用户可能更喜欢使用 |
本节演示如何在 FreeBSD 系统上安装 Subversion 并使用它创建 FreeBSD 存储库的本地副本。还包括有关 Subversion 用法的其他信息。
A.3.2. Svnlite
FreeBSD 上已经安装了 Subversion 的轻量级版本,称为 svnlite
。仅当需要 Python 或 Perl API 或需要更高版本的 Subversion 时,才需要 Subversion 的端口或软件包版本。
与普通 Subversion 用法的唯一区别在于命令名称为 svnlite
。
A.3.3. 安装
如果 svnlite
不可用或需要完整版本的 Subversion,则必须安装它。
Subversion 可以从 Ports 集合安装。
# cd /usr/ports/devel/subversion
# make install clean
Subversion 也可以作为软件包安装。
# pkg install subversion
A.3.4. 运行 Subversion
要将源代码的干净副本获取到本地目录,请使用 svn
。此目录中的文件称为本地工作副本。
在第一次使用 |
Subversion 使用 URL 来指定存储库,格式为 protocol://hostname/path。路径的第一部分是要访问的 FreeBSD 存储库。有三个不同的存储库,base
用于 FreeBSD 基础系统源代码,ports
用于 Ports 集合,doc
用于文档。例如,URL https://svn.FreeBSD.org/base/head/
指定了 src 存储库的主分支,使用 https
协议。
从给定存储库进行检出可以使用以下命令执行
# svn checkout https://svn.FreeBSD.org/repository/branch lwcdir
其中
repository 是项目存储库之一:
base
、ports
或doc
。branch 取决于使用的存储库。
ports
和doc
主要在head
分支中更新,而base
在head
下维护 -CURRENT 的最新版本,并在stable/11
(11.x) 和stable/12
(12.x) 下维护 -STABLE 分支的各自最新版本。lwcdir 是应将指定分支的内容放置到的目标目录。对于
ports
,这通常是 /usr/ports,对于base
,是 /usr/src,对于doc
,是 /usr/doc。
此示例使用 HTTPS 协议从 FreeBSD 存储库检出源代码树,并将本地工作副本放置在 /usr/src 中。如果 /usr/src 已经存在但不是由 svn
创建的,请记住在检出之前重命名或删除它。
# svn checkout https://svn.FreeBSD.org/base/head /usr/src
由于初始检出必须下载远程存储库的完整分支,因此可能需要一段时间。请耐心等待。
初始检出后,可以通过运行以下命令更新本地工作副本
# svn update lwcdir
要更新上面示例中创建的 /usr/src,请使用
# svn update /usr/src
更新比检出快得多,只传输已更改的文件。
除了检出之外,还可以通过/usr/ports、/usr/src和/usr/doc目录中的Makefile更新本地工作副本。设置SVN_UPDATE
并使用update
目标。例如,要更新/usr/src
# cd /usr/src
# make update SVN_UPDATE=yes
A.3.5. Subversion镜像站点
FreeBSD Subversion代码库位于
svn.FreeBSD.org
这是一个公开可访问的镜像网络,它使用GeoDNS选择合适的后端服务器。要通过浏览器查看FreeBSD Subversion代码库,请使用https://svnweb.FreeBSD.org/。
HTTPS是首选协议,但需要安装security/ca_root_nss软件包才能自动验证证书。
A.3.6. 更多信息
有关使用Subversion的其他信息,请参阅名为Version Control with Subversion的“Subversion书籍”,或Subversion文档。
A.4. 光盘副本
FreeBSD光盘副本可从几家在线零售商处获得
FreeBSD Mall, Inc.
1164 Claremont Dr
Brentwood, CA
94513
USA
电话:+1 925 240-6652
传真:+1 925 674-0821
电子邮件:[email protected]
网站:https://www.freebsdmall.comGetlinux
网站:https://www.getlinux.fr/Dr. Hinner EDV
Schäftlarnstr. 10 // 4. Stock
D-81371 München
德国
电话:+49 171 417 544 6
电子邮件:[email protected]
网站:http://www.hinner.de/linux/freebsd.html
最后修改于:2024年9月20日,作者 Fernando Apesteguía