?

Log in

No account? Create an account

Previous Entry | Next Entry

Из жизни барахольщика

Большой Англо-русский словарь даёт два перевода словосочетания pack rat, относя оба к "ам. сл.": 1. воришка; 2. барахольщик, тот кто не выбрасывает ненужное старье. Первое значение я слышу впервые, а вот второе очень употребимо. Должен сказать, что я - резко выраженный pack rat(2). Выбросить что-то мне трудно, особенно нематериальное: первую версию статьи, тридцать четвёртую версию этой же статьи... К счастью, CVS позволяет держать все версии на диске так, чтобы они не мешали друг другу. И даже развлекаться иногда, рассматривая, что я изменил при переходе от версии 36 к версии 42. Кстати, программка latexdiff - это круто.

Это я вот к чему. Сегодня был в банке, клал в сейф ЦРУшного кредитного союза очередную пачку бэкапных ленточек, которые вывожу из ротации. И обнаружил, что в сейфе места больше нет. Заказывать новый сейф, побольше, меня задушила жаба. Поэтому решил убрать оттуда какие-нибудь старые ленты. Выбор пал на январь 2004 года. Ладно, обойдусь без них - тем более, что февраль в сейфе есть.

Comments

( 15 comments — Leave a comment )
romka_on_lj
Mar. 31st, 2006 12:50 am (UTC)
Вы используете CVS локально? И как оно -- оправдывает себя?

Вы не подскажете, можно ли локальный CVS настроить таким образом, чтобы документы и прочие файлы принадлежали root'у, но определённый пользователь имел доступ на запись, чтение и создание, но не удаление?

Я в CVS ничего толком не понимаю, но хотел бы решить задачку безопасного храниния своей библиотеки и рабочих документов. Бо несколько раз сносил начисто и на сей момент иного успокоения, кроме того, что всё — суета сует, себе не нахожу. :)

И ещё, если Вам не трудно: чем хороша latexdiff? Что она делает, — типа, diff такой специальный? :)
romka_on_lj
Mar. 31st, 2006 12:52 am (UTC)
Извините, наделал ошибок по причине некоторой усталости.
scholar_vit
Mar. 31st, 2006 01:26 am (UTC)
1. Я не понял, что такое "локально". Я привык работать на нескольких компьютерах: дома, на работе, на лаптопе в дороге. Единый репозиторий при этом очень помогает; о работе "до CVS" я вспоминаю с содроганием. Крайне полезная штука в CVS - three way merge. Благодаря ей, если я забуду на каком-то компьютере сделать commit и на другом копьютере буду править другую часть старой версии, CVS сведёт все изменения вместе - или объяснит, где мои правки противоречат друг другу. Как хорошая секретарша.

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
scholar_vit
Mar. 31st, 2006 01:39 am (UTC)
s/u+s/+t/
romka_on_lj
Mar. 31st, 2006 02:37 am (UTC)
Спасибо.

1. Под «локально» я подразумеваю свою собственную машинку. У меня никого с юниксом, кроме себя самого, нету, потому я сам себе и root, и пользователь, и кривые руки.

Ну, и копии файлов множатся, что тоже не может радовать. Реальная проблема.

2. В том-то и дело, что файлы удаляются по недоразумению.

Например, у меня было две копии электронной библиотеки. Между ними постепенно накапливались отличия, чем дальше — тем больше. Привести их к единому знаменателю вручную — сизифов труд. Делать бекапы — тоже проблему не решает, потому что в самой библиотеке постепенно накапливаются правки. В конечном итоге я делал сякую-такую синхронизацию (вручную), и принимал решение, что можно одну из копий удалять. Естественно, через некоторое время эти копии (именно копии, не связанные ссылками) становятся вовсе не копиями: например, могут отличаться вложенными каталогами и так далее. После благополучного удаления одной из копий библиотеки я вспоминал, что в оставшейся копии отсутствует некий важный каталог. До rm -rf / дело не доходило. :)

Как думаете: есть ли смысл делать репозиторий на отдельном разделе, который будет автоматически монтироваться только на сеанс работы непосредственно с CVS? Впрочем, буду читать про CVS, потому что это для меня пока тема неясная.

Но в принципе ясно: если владельцем каталога с репозиторием будет root, то вероятность случайного удаления репозитория станет заметно меньшей. В принципе, у меня в Debian'e CVS установлен, но так ни разу не удосужился разобраться, с чем его едят.

3. Спасибо. :)

Глупо сформулировал вопрос: я имел в виду, что это diff для latex'а. Латеховские файлы у меня обычно в единичном экземпляре, потому надобности не возникало.
scholar_vit
Mar. 31st, 2006 03:14 am (UTC)
1. Понятно. Да, CVS прекрасно работает с локальным репозиторием.

2. Для описанной Вами работы CVS очень подходит. Нет, владение библиотекой root'ом никак не улучшает ситуации, просто привыкайете не использовать команды типа rm в репозитории, а просто делать cvs remove в рабочей директории. Делать репозиторий на отдельно разделе неудобно.

Попробуйте поставьте пакет cvsbook и почитайте: это очень хорошее руководство.
romka_on_lj
Apr. 1st, 2006 02:20 pm (UTC)
Спасибо, буду изучать.

Насчёт rm Вы правы; уже добавил для интерактивности соответствующие алиасы в .bashrc.
bapehbe
Mar. 31st, 2006 07:24 am (UTC)
простите, давно хотел спросить что Вы преподаёте?
ведь не computer science, правда ведь?
просто интереcно откуда у Вас Unix background
scholar_vit
Mar. 31st, 2006 09:27 pm (UTC)
Преподаю я странный предмет: введение в нанотехнологию. Что-то вроде квантовой мехнаики, твердого тела и элементов статфизики в одном флаконе. Но делаю это я вечерами, а днём мне платят деньги за телекоммуникации: вроде запуска в космос коробочек с линуксом унутре. Но Юниксом я увлекался давно: мне с самого начала приходилось заниматься счетом, статьи в TeXе писать и т.д. А будучи человеком ленивым, я понял, что мне проще сделать рабочий и домашний компьютер максимально схожими, чтобы не возиться с изучением ДВУХ сред.

Впрочем, лекции по Юниксу я тоже читал.
vap
Mar. 31st, 2006 10:03 am (UTC)
Мне кажется, что если начинать пользоваться version control-ом, то лучше пусть это будет не CVS, а Subversion. На первый взгляд, они очень похожи при повседневной работе, но SVN более "целостен", чем CVS - идеи проще, устройство стройнее, некоторые вещи сделаны надежнее (например, не надо помнить о необходимости использования ключей -kb при работе с двоичными файлами). Для меня также важно, что SVN позволяет делать переименования файлов с сохранением предыстории - в CVS мне, с моим стилем разработки, этого очень не хватало.
Вот короткая и понятная книжка по Subversion: http://svnbook.red-bean.com/
scholar_vit
Mar. 31st, 2006 09:38 pm (UTC)
Любопытно: мне уже несколько человек говорило про subversion. Попробую изучить.
romka_on_lj
Apr. 1st, 2006 02:12 pm (UTC)
Спасибо. Скачал книжку, буду читать. :)
mbla
Mar. 31st, 2006 08:18 am (UTC)
Ах, какую трогательную религиозную передачу мы случайно поймали лет 25 назад - какой-то баптист сладким нежным голосом рассказывал про крыс в Латинской Америке, которые складывают имущество в норки, а потом забывают, где эти норки, и так и человек...
scholar_vit
Mar. 31st, 2006 09:29 pm (UTC)
История замечательная, но как они сумели религиозный вывод приплести?
mbla
Apr. 1st, 2006 05:57 pm (UTC)
Ну, в баптистских проповедях и не такое, я думаю, умеют. Собственно, это были эдакие мысли по поводу - всякому ведь должно быть ясно, что человек не должен быть суетен, а тут в норки что-то там прячет. подом забывает - суетный человек, о боге не думает.
( 15 comments — Leave a comment )

Profile

knot
scholar_vit
scholar_vit

Latest Month

August 2018
S M T W T F S
   1234
567891011
12131415161718
19202122232425
262728293031 

Tags

Powered by LiveJournal.com
Designed by Paulina Bozek