Simon Phoenix прав, но насколько я понял, чел хочет сначала обновить portstree, И ТОЛЬКО для апача и его зависимостей.
Если так, то ему поможет утилитка portcheckout.
Хотя задачка слегка нетривиальная, всёже попробую помочь.
Все нижеприведённые комманды следует выполнять от имени пользователя root из шелла sh или bash.
1) Ставим portcheckout:
cd /usr/ports/devel/portcheckout
make; make install
2) Сохраняем старые INDEX'ы для ports:
cd /usr/ports
mkdir oldindex
mv INDEX* oldindex/
3) Скачиваем новый INDEX файл
make fetchindex
(в результате должен появиться /usr/ports/INDEX-6)
4) Выбираем какой именно апач нам нужен для обновления.
cut -d '|' -f 1 INDEX-6 | grep ^apache-[0-9]
при этом получаем список апачей.
к примеру нечто похожее на это:
apache-1.3.36
apache-2.0.58_1
apache-2.1.9_5
apache-2.2.2
Допустим нам нужно обновить portstree только для apache-1.3*.
4) Настраиваем необходимые переменные для cvs
CVSROOT=freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs; export CVSROOT
5) Запускаем portcheckout. Я не советую cмешивать новую и старую ветки port'ов. Лучше создать новый portstree.
В этом новом portstree будут находиться только базовые Makefile'ы, а также порты, необходимые для апача + сам апач. Новый portstree положим, к примеру, в /tmp/newports:
mkdir /tmp/newports/
cd /tmp/newports
portcheckout --index=/usr/ports/INDEX-6 --fetchonly apache-1.3.36 | sh
Теперь в /tmp/newports/ports находится новое дерево портов, содержашее только то, что нужно для сборки apache-1.3.36.
6) Восстанавливаем старые INDEX'ы, чтобы старый portstree был всёещё работоспособен.
cd /usr/ports
mv oldindex/INDEX* .
rmdir oldindex
7) А теперь инсталлируем новый apache из нового portstree:
PORTSDIR="/tmp/newports/ports"; export PORTSDIR
cd /tmp/newports/ports/www/apache13
make; make install
P.S. Перед последним шагом, возможно, придётся снести старую версию апача, чтобы make install не ругался.
(снести проще всего через pkg_delete).
P.P.S. ВСЁ ВЫШЕПРИВЕДЁННОЕ РАБОТАЕТ, НО ПРИ ЭТОМ ЯВЛЯЕТСЯ КОСТЫЛЁМ 8)
Удачи.