scholar_vit: (Default)
[personal profile] scholar_vit

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

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

Date: 2006-03-31 12:50 am (UTC)
From: [identity profile] romka-on-lj.livejournal.com
Вы используете CVS локально? И как оно -- оправдывает себя?

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

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

И ещё, если Вам не трудно: чем хороша latexdiff? Что она делает, — типа, diff такой специальный? :)

Date: 2006-03-31 12:52 am (UTC)
From: [identity profile] romka-on-lj.livejournal.com
Извините, наделал ошибок по причине некоторой усталости.

Date: 2006-03-31 01:26 am (UTC)
From: [identity profile] scholar-vit.livejournal.com
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

Date: 2006-03-31 01:39 am (UTC)

Date: 2006-03-31 02:37 am (UTC)
From: [identity profile] romka-on-lj.livejournal.com
Спасибо.

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

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

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

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

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

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

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

Глупо сформулировал вопрос: я имел в виду, что это diff для latex'а. Латеховские файлы у меня обычно в единичном экземпляре, потому надобности не возникало.

Date: 2006-03-31 03:14 am (UTC)
From: [identity profile] scholar-vit.livejournal.com
1. Понятно. Да, CVS прекрасно работает с локальным репозиторием.

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

Попробуйте поставьте пакет cvsbook и почитайте: это очень хорошее руководство.

Date: 2006-03-31 07:24 am (UTC)
From: [identity profile] bapehbe.livejournal.com
простите, давно хотел спросить что Вы преподаёте?
ведь не computer science, правда ведь?
просто интереcно откуда у Вас Unix background

Date: 2006-03-31 08:18 am (UTC)
From: [identity profile] mbla.livejournal.com
Ах, какую трогательную религиозную передачу мы случайно поймали лет 25 назад - какой-то баптист сладким нежным голосом рассказывал про крыс в Латинской Америке, которые складывают имущество в норки, а потом забывают, где эти норки, и так и человек...

Date: 2006-03-31 10:03 am (UTC)
From: [identity profile] vap.livejournal.com
Мне кажется, что если начинать пользоваться version control-ом, то лучше пусть это будет не CVS, а Subversion. На первый взгляд, они очень похожи при повседневной работе, но SVN более "целостен", чем CVS - идеи проще, устройство стройнее, некоторые вещи сделаны надежнее (например, не надо помнить о необходимости использования ключей -kb при работе с двоичными файлами). Для меня также важно, что SVN позволяет делать переименования файлов с сохранением предыстории - в CVS мне, с моим стилем разработки, этого очень не хватало.
Вот короткая и понятная книжка по Subversion: http://svnbook.red-bean.com/

Date: 2006-03-31 09:27 pm (UTC)
From: [identity profile] scholar-vit.livejournal.com
Преподаю я странный предмет: введение в нанотехнологию. Что-то вроде квантовой мехнаики, твердого тела и элементов статфизики в одном флаконе. Но делаю это я вечерами, а днём мне платят деньги за телекоммуникации: вроде запуска в космос коробочек с линуксом унутре. Но Юниксом я увлекался давно: мне с самого начала приходилось заниматься счетом, статьи в TeXе писать и т.д. А будучи человеком ленивым, я понял, что мне проще сделать рабочий и домашний компьютер максимально схожими, чтобы не возиться с изучением ДВУХ сред.

Впрочем, лекции по Юниксу я тоже читал.

Date: 2006-03-31 09:29 pm (UTC)
From: [identity profile] scholar-vit.livejournal.com
История замечательная, но как они сумели религиозный вывод приплести?

Date: 2006-03-31 09:38 pm (UTC)
From: [identity profile] scholar-vit.livejournal.com
Любопытно: мне уже несколько человек говорило про subversion. Попробую изучить.

Date: 2006-04-01 02:12 pm (UTC)
From: [identity profile] romka-on-lj.livejournal.com
Спасибо. Скачал книжку, буду читать. :)

Date: 2006-04-01 02:20 pm (UTC)
From: [identity profile] romka-on-lj.livejournal.com
Спасибо, буду изучать.

Насчёт rm Вы правы; уже добавил для интерактивности соответствующие алиасы в .bashrc.

Date: 2006-04-01 05:57 pm (UTC)
From: [identity profile] mbla.livejournal.com
Ну, в баптистских проповедях и не такое, я думаю, умеют. Собственно, это были эдакие мысли по поводу - всякому ведь должно быть ясно, что человек не должен быть суетен, а тут в норки что-то там прячет. подом забывает - суетный человек, о боге не думает.

Profile

scholar_vit: (Default)
scholar_vit

January 2019

S M T W T F S
  12345
678 9101112
13141516171819
20212223242526
2728293031  

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Apr. 8th, 2026 10:20 pm
Powered by Dreamwidth Studios