2012 оны 7 сараас FreeBSD-н бүх эх код, баримтжуулалт болон портын цуглуулгыг хадгалахдаа Subversion (svn)-г үндсэн хувилбар удирдах систем болгон ашиглаж эхэлсэн.
Subversion хөгжүүлэлтийн хэрэгсэл юм. Ихэнх хэрэглэгчид FreeBSD-г шинэчлэх хэсэгт зааснаар FreeBSD-н үндсэн системийг шинэчлэх ёстой бөгөөд FreeBSD-н портын цуглуулгыг шинэчлэхдээ Portsnap-г ашиглах ёстой.
Subversion-д URL-г ашиглан репозиторыг заадаг бөгөөд
protocol://hostname/path
хэлбэрийн байна.
Доор заасан шиг толин тусгалууд өөр өөр протоколуудыг
дэмжиж болно. Замын эхний хэсэг нь хандаж болох FreeBSD-н
репозитор юм. Гурван өөр репозитор байдаг: FreeBSD-н үндсэн
системийн эх кодод зориулсан base
,
Портын цуглуулгад зориулсан ports
,
баримтжуулалтад зориулсан doc
байдаг.
Жишээ нь URL
svn://svn0.us-east.FreeBSD.org/ports/head/
нь
svn протоколыг ашиглан svn0.us-east.FreeBSD.org
толин дээрх
портын репозиторын гол салбарыг зааж байна.
Subversion-г аль ч репозиторын агуулгыг татаж авахаас өмнө суулгасан байх шаардлагатай. Хэрэв портын мод байгаа бол Subversion-г ингэж суулгаж болно:
#
cd /usr/ports/devel/subversion
#
make install clean
Хэрэв портын мод байхгүй бол Subversion-г багц хэлбэрээр суулгаж болно:
#
pkg_add -r subversion
Хэрэв pkgng ашиглан багцыг удирддаг бол Subversion-г ингэж суулгана:
#
pkg install devel/subversion
Эхийн цэвэр хувилбарыг татаж локал сан руу
авахад svn
тушаалыг ашиглаж
болно. Энэ санд байгаа файлуудыг локал ажлын
хувилбар гэдэг.
Локал сан нь үүссэн боловч svn
тушаалаар үүсгэгдээгүй бол татаж авахаасаа өмнө
нэрийг солих юм уу устгаарай. svn
-ээр
үүсгэгдээгүй сан дээр татаж авах тохиолдолд татаж авч байгаа
файлууд нь байгаа файлуудтай зөрөх асуудал үүсч
болзошгүй.
Өгөгдсөн репозитороос татаж авахдаа энэ маягийн тушаалыг:
#
svn checkout svn-mirror
/repository
/branch
lwcdir
гэж ажиллуулах бөгөөд:
svn-mirror
нь
Subversion толин сайтууд
дахь аль нэгийн URL юм.
repository
нь төслийн аль нэг
репозитор бөгөөд жишээ нь base
,
ports
, эсвэл doc
.
branch
нь ашиглаж
байгаа репозитороос хамаарна. ports
ба
doc
нь head
салбарт
ихэвчлэн шинэчлэгддэг бол base
нь
-CURRENT-н хамгийн сүүлийн хувилбарыг head
дотор агуулж байдаг бөгөөд -STABLE салбарын сүүлийн
хувилбарууд нь stable/8
(
8.x
) болон
stable/9
(9.x
) дотор байдаг.
lwcdir
нь зааж өгсөн салбарын
агуулга байрлах сан юм. Энэ нь ихэвчлэн
ports
-н хувьд /usr/ports
,
base
-н хувьд /usr/src
,
doc
-н хувьд /usr/doc
байдаг.
Энэ нь Портын цуглуулгыг АНУ-н баруунд байрлах
репозитороос HTTPS протокол ашиглан локал ажлын хуулбарыг
/usr/ports
-д санд
байршуулж байгаа жишээ юм. Хэрэв
/usr/ports
сан
байгаа бөгөөд svn
-ээр үүсгэгдээгүй
бол өөрчлөх юм уу устгахаа мартуузай.
#
svn checkout https://svn0.us-west.FreeBSD.org
/ports/head /usr/ports
Алсын репозиторын бүрэн салбарыг эхний удаа татаж авах учраас удаж магадгүй. Тэвчээртэй байгаарай.
Эхний удаа татсаныхаа дараа локал ажлын хуулбарыг шинэчлэхдээ:
#
svn update lwcdir
Дээрх жишээн дээр үүсгэсэн
/usr/ports
-г шинэчлэхдээ:
#
svn update /usr/ports
Татаж авахаас шинэчлэх нь хурдан бөгөөд өөрчлөгдсөн файлуудыг л татаж авдаг.
Татаж авсныхаа дараа локал ажлын хуулбарыг шинэчлэх өөр
нэг арга нь /usr/ports
,
/usr/src
, ба
/usr/doc
сангууд дахь
Makefile
-д байдаг.
SVN_UPDATE
-г зааж өгөөд
update
гэж хэрэглэнэ.
Жишээ нь /usr/src
-г
шинэчлэхийн тулд:
#
cd /usr/src
#
make update SVN_UPDATE=yes
Subversion ашиглах талаар бусад мэдээллийг Version Control with Subversion нэртэй «Subversion ном», эсвэл Subversion баримтжуулалтаас үзнэ үү.
Энэ болон бусад баримтуудыг ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/ хаягаас татаж авч болно.
FreeBSD-ийн талаар
<questions@FreeBSD.org>
хаягтай холбоо барихаасаа өмнө
баримтыг уншина уу.
Энэ бичиг баримттай холбоотой асуулт байвал
<doc@FreeBSD.org>
хаягаар цахим захидал явуулна уу.
Энэ бичиг баримтын орчуулгатай холбоотой асуулт байвал
<admin@mnbsd.org>
хаягаар цахим захидал явуулна уу.