答案1
extract
你不能用 来做到这一点portsnap
。如果您已经有快照(您已经下载了它),您只能访问extract
端口树的一部分 ( portsnap extract databases/postgresql11-server
),请参阅man portsnap
:
path For extract command only, operate only on parts of the ports tree starting with path. (e.g. portsnap extract sysutils/port would extract sysutils/portsman, sysutils/portsnap, sysutils/portupgrade, etc.)
svn
如果您不想获取这些大文件,您可以使用以下命令svn
代替portsnap
:
svn checkout https://svn.freebsd.org/ports/head/databases/postgresql11-server
请参阅手册的相关部分。
它svn
是基本系统的一部分(/usr/bin/svnlite
-您可以使用别名或替换svn
为svnlite
),因此您不必安装开发/颠覆。
答案2
是的,而且很简单。它就在本书的章节中手册你正在看的。
您将需要安装 ports 树,其中手册解释了如何做。它提供了两种方法,portsnap
从源代码控制中检查树(甚至是树的一部分,尽管跨包依赖关系对此产生不利影响)。 (PC-BSD/TrueOS 用户使用 git 而不是 subversion。)
更改为所需端口/包的单独目录,运行make fetch
以获取源存档,然后运行make extract
以提取内容。您最终会得到端口树骨架,并且仅存在该端口的文件。
也可以在更高级别执行获取,/usr/ports/databases
例如手册§4.5.1.1 中进行了解释。