|
|
ru.unix- RU.UNIX ---------------------------------------------------------------------- From : Max Khon 2:5000/79 07 Dec 2005 00:04:06 To : Anton Yuzhaninov Subject : храниние конфигов в svn -------------------------------------------------------------------------------- 06 Dec 05 16:20, you wrote to All: AY> Решил хранить /etc и /usr/local/etc с серверов в subversion AY> Hе совсем понятно как преобразовать существующу папку в рабочую копию. AY> svn import сделал. AY> Теперь если сделать svn co в /ect, то он ругается, что такие файлы уже AY> есть. Если удалть /etc и сделать svn co, то при этом не сохраняются AY> разрешения файлов... AY> Как лучше это сделать? использую собранное на коленке что-то типа -+- cut here --- # $Id: Makefile.inc,v 1.10 2004/08/02 22:13:25 fjoe Exp $ # LIST= cat LIST | sed -e 's/\#.*//' -e '/^[ ]*$$/d' all: update: tar cf - `$(LIST) | awk '{ print $$1 }'` | tar xvf - find . -type f -print0 | xargs -0 chmod +rw find . -type d -and ! -name . -print0 | xargs -0 chmod +rwx chown -R $(UID) . install: pre-install do-install post-install do-install: tar cf - `$(LIST) | awk '{ print $$1 }' | sed 's,^/,,'` | tar xvf - -C / $(LIST) | awk '{ print $$2" "$$1 }' | xargs -n 2 chown $(LIST) | awk '{ print $$3" "$$1 }' | xargs -n 2 chmod pre-install: post-install: pwd_mkdb /etc/master.passwd newaliases -+- cut here --- -+- cut here --- # # $Id: BSDmakefile,v 1.3 2004/03/13 21:19:48 fjoe Exp $ # HOSTNAME= neo UID!= ls -ld . | awk '{ print $$3 }' .if ${HOSTNAME} != *any* hostname!= hostname -s .if ${HOSTNAME} != ${hostname} .error "This Makefile can be used only on [$(HOSTNAME)]" .endif .endif .include "Makefile.inc" -+- cut here --- -+- cut here --- # # $Id: LIST,v 1.26 2005/03/16 19:52:57 fjoe Exp $ # # # System /boot/loader.conf root:wheel 644 /etc/crontab root:wheel 644 /etc/fstab root:wheel 644 /etc/group root:wheel 644 /etc/make.conf root:wheel 644 /etc/master.passwd root:wheel 600 /etc/newsyslog.conf root:wheel 644 /etc/ntp.conf root:wheel 644 /etc/periodic.conf root:wheel 644 -+- cut here --- make update -- скопировать файлы в текущую директорию в соответствии с LIST make install -- проинсталлисть файлы из текущей директории в соответствии с LIST текущая директория -- собственно cvs или svn sandbox. то бишь после make update делается cvs/svn add, cvs/svn commit для deployment наоборот -- после cvs/svn checkout/update делается make install можно добавить еще обработку директорий в LIST (скажем, записи, которые заканчиваются на '/' считаются директориями) /fjoe --- GoldED+/BSD 1.1.5 * Origin: за окном (2:5000/79) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix/18634395c5a5.html, оценка из 5, голосов 10
|