Из жизни барахольщика
Mar. 30th, 2006 05:26 pmБольшой Англо-русский словарь даёт два перевода словосочетания pack rat, относя оба к "ам. сл.": 1. воришка; 2. барахольщик, тот кто не выбрасывает ненужное старье. Первое значение я слышу впервые, а вот второе очень употребимо. Должен сказать, что я - резко выраженный pack rat(2). Выбросить что-то мне трудно, особенно нематериальное: первую версию статьи, тридцать четвёртую версию этой же статьи... К счастью, CVS позволяет держать все версии на диске так, чтобы они не мешали друг другу. И даже развлекаться иногда, рассматривая, что я изменил при переходе от версии 36 к версии 42. Кстати, программка latexdiff - это круто.
Это я вот к чему. Сегодня был в банке, клал в сейф ЦРУшного кредитного союза очередную пачку бэкапных ленточек, которые вывожу из ротации. И обнаружил, что в сейфе места больше нет. Заказывать новый сейф, побольше, меня задушила жаба. Поэтому решил убрать оттуда какие-нибудь старые ленты. Выбор пал на январь 2004 года. Ладно, обойдусь без них - тем более, что февраль в сейфе есть.
no subject
Date: 2006-03-31 12:50 am (UTC)Вы не подскажете, можно ли локальный CVS настроить таким образом, чтобы документы и прочие файлы принадлежали root'у, но определённый пользователь имел доступ на запись, чтение и создание, но не удаление?
Я в CVS ничего толком не понимаю, но хотел бы решить задачку безопасного храниния своей библиотеки и рабочих документов. Бо несколько раз сносил начисто и на сей момент иного успокоения, кроме того, что всё — суета сует, себе не нахожу. :)
И ещё, если Вам не трудно: чем хороша latexdiff? Что она делает, — типа, diff такой специальный? :)
no subject
Date: 2006-03-31 12:52 am (UTC)no subject
Date: 2006-03-31 01:26 am (UTC)2. Настроить CVS так, чтобы пользователь имел доступ на создание, но НЕ удаление своих файлов, скорее всего, нельзя: так устроен Юникс (чужие файлы можно запретить удалять, если поставить u+s в permissions на директорию, см. man chmod, STICKY DIRECTORIES). Но Вам это на самом деле НЕ нужно: Вы хотите ненароком не удалить свои файлы. А это и так обеспечено: по команде cvs remove файл в репозитории НЕ удаляется, а переносится в директорию Attic. Если Вы выработаете в себе привычку НИКОГДА не трогать непосредственно репозиторий, то случайно удалить Вы ничего не сможете. Кстати, полезно иметь два репозитория: один принадлежащий root'у для общих и публичных проектов, другой - личный, закрытый для чтения посторонним и содержащий только Ваши личные файлы.
3. diff показывает разницу между двумя текстовыми файлами (например, tex-овскими). latexdiff - это такой перловый скрипт, который создаёт новый tex-овский файл, где изменения между двумя tex-овскими файлами показаны типографским способом: новые абзацы одним цветом, удаленные абзацы вычеркнуты и так далее. Это похоже на то, что в MS Word называется version control, но более функционально. Если тот факт, что версии - texовские файлы, не важен, то полезно использовать viewcvs, см. пример http://viewvc.tigris.org/source/browse/viewvc/trunk/viewvc-install?r1=1289&r2=1293&p1=trunk/viewvc-install&p2=trunk/viewvc-install
no subject
Date: 2006-03-31 01:39 am (UTC)no subject
Date: 2006-03-31 02:37 am (UTC)1. Под «локально» я подразумеваю свою собственную машинку. У меня никого с юниксом, кроме себя самого, нету, потому я сам себе и root, и пользователь, и кривые руки.
Ну, и копии файлов множатся, что тоже не может радовать. Реальная проблема.
2. В том-то и дело, что файлы удаляются по недоразумению.
Например, у меня было две копии электронной библиотеки. Между ними постепенно накапливались отличия, чем дальше — тем больше. Привести их к единому знаменателю вручную — сизифов труд. Делать бекапы — тоже проблему не решает, потому что в самой библиотеке постепенно накапливаются правки. В конечном итоге я делал сякую-такую синхронизацию (вручную), и принимал решение, что можно одну из копий удалять. Естественно, через некоторое время эти копии (именно копии, не связанные ссылками) становятся вовсе не копиями: например, могут отличаться вложенными каталогами и так далее. После благополучного удаления одной из копий библиотеки я вспоминал, что в оставшейся копии отсутствует некий важный каталог. До rm -rf / дело не доходило. :)
Как думаете: есть ли смысл делать репозиторий на отдельном разделе, который будет автоматически монтироваться только на сеанс работы непосредственно с CVS? Впрочем, буду читать про CVS, потому что это для меня пока тема неясная.
Но в принципе ясно: если владельцем каталога с репозиторием будет root, то вероятность случайного удаления репозитория станет заметно меньшей. В принципе, у меня в Debian'e CVS установлен, но так ни разу не удосужился разобраться, с чем его едят.
3. Спасибо. :)
Глупо сформулировал вопрос: я имел в виду, что это diff для latex'а. Латеховские файлы у меня обычно в единичном экземпляре, потому надобности не возникало.
no subject
Date: 2006-03-31 03:14 am (UTC)2. Для описанной Вами работы CVS очень подходит. Нет, владение библиотекой root'ом никак не улучшает ситуации, просто привыкайете не использовать команды типа rm в репозитории, а просто делать cvs remove в рабочей директории. Делать репозиторий на отдельно разделе неудобно.
Попробуйте поставьте пакет cvsbook и почитайте: это очень хорошее руководство.
no subject
Date: 2006-03-31 07:24 am (UTC)ведь не computer science, правда ведь?
просто интереcно откуда у Вас Unix background
no subject
Date: 2006-03-31 08:18 am (UTC)no subject
Date: 2006-03-31 10:03 am (UTC)Вот короткая и понятная книжка по Subversion: http://svnbook.red-bean.com/
no subject
Date: 2006-03-31 09:27 pm (UTC)Впрочем, лекции по Юниксу я тоже читал.
no subject
Date: 2006-03-31 09:29 pm (UTC)no subject
Date: 2006-03-31 09:38 pm (UTC)no subject
Date: 2006-04-01 02:12 pm (UTC)no subject
Date: 2006-04-01 02:20 pm (UTC)Насчёт rm Вы правы; уже добавил для интерактивности соответствующие алиасы в .bashrc.
no subject
Date: 2006-04-01 05:57 pm (UTC)