Страница 1 из 1

[CVS] объясните на пальцах

Добавлено: 2009-05-21 21:07:24
zg
Задался вопросом изучить контроль версий исходников на примере CVS.

Нашёл сайт с докой, почитал, создал репозиторий, добавил модуль, даже через ZDE начал коммитить изменения... Остался неясным вопрос: «Что делать дальше?». Интуитивно понимаю, что типа «да, контроль идёт», но чего с этим контролем делать то? Главным образом интерисует каким макаром организовать автоматическое обновление некоторых файлов. В частности, у меня есть стандартные библиотеки (обычные PHP–файлы), которые на каждый сайт (у меня пректы — сайты) постоянные и только дорабатываются. Как мне надо организовать репозиторий и работу с ZDE, чтобы иметь всегда свежие версии библиотек в каждом проекте?

Спасибо.

Re: [CVS] объясните на пальцах

Добавлено: 2009-05-21 21:12:47
paradox
чесно говоря прочитал
перечитал
и все равно не понял что ты хочешь

Re: [CVS] объясните на пальцах

Добавлено: 2009-05-21 21:21:30
zg
ну есть файлы, которые во всех проектах у меня всегда постоянные. Я их методом копипаста множу на каждый проект. А хотелось бы их как-то централизованно контролировать. Вот и подумал, может CVS подойдёт.

Re: [CVS] объясните на пальцах

Добавлено: 2009-05-21 21:36:56
paradox
чесно говоря непонимаю чем должен был помочь cvs
а зачем копи паст?
посто копируй файлы
с одной папочки на все куда надо

Re: [CVS] объясните на пальцах

Добавлено: 2009-05-21 21:50:55
zg
paradox писал(а):с одной папочки на все куда надо
да тут понимаешь какое дело... у меня 50 папок с проектами, в каждом проекте больше ста файлов... при этом в каждом проекте есть свои уникальные изменения, включая и общие файлы.. Если просто копировать, то нифига не работает, поскольку незначительные иземения приводят к фатальным ошибкам. А, обычно, все файлы правлю по ходу разработки проекта, то есть не исходные, а те, которые в папке проекта лежат. И к концу разработки банально не помню, где и чего изменял и с какой целью :smile: CVS по идее и задумано, дабы упросить разработку таких файлов. Вот и хотел узнать как надо пользоваться репозиториями.

Re: [CVS] объясните на пальцах

Добавлено: 2009-05-21 22:02:16
hizel
видимо ты говоришь всетаки о VCS :]

Re: [CVS] объясните на пальцах

Добавлено: 2009-05-21 22:02:47
paradox
ну в двух словах если я понял

у тебя один и теже файлы токо с маленькими изменениями используються в разных проектах

вот cvs поможет тебе хранить все изменения этих фалов

и потом к примеру
по ревизиии -r1.0 ты будешь с cvs вытягивать готовые файлы для проекта QWERTY1.0 к примеру
а -r2.0 будешь тянуть ревизию этих же файлов токо уже с другими изменениями для проекта ASDFG2
к примеру
тогда да
есть смысл cvs

Re: [CVS] объясните на пальцах

Добавлено: 2009-05-21 22:42:45
zg
hizel писал(а):видимо ты говоришь всетаки о VCS :]

Код: Выделить всё

D:\WEBSER~1\home\cvs>cvs.exe commit -m asdas  D:\WebServers\home\cvs\dir1\dir2\test\index.php
D:\WebServers\home\cvs\src/dir1/dir2/index.php,v  <--  index.php
new revision: 1.5; previous revision: 1.4

D:\WEBSER~1\home\cvs>
ммм... но юзаю то cvs :pardon:
paradox писал(а):вот cvs поможет тебе хранить все изменения этих фалов
ага, плюс коммитить важные изменения по ходу разработки проекта :smile: правда пока не соображу как репозиторий правильно настроить...

Re: [CVS] объясните на пальцах

Добавлено: 2009-05-22 0:30:02
hizel
не стоит пользовать этот труп, возьми поновее, хотя бы svn что-ли :unknown:

Re: [CVS] объясните на пальцах

Добавлено: 2009-05-22 7:05:52
zg
hizel писал(а):не стоит пользовать этот труп, возьми поновее, хотя бы svn что-ли :unknown:
Пифагор тоже давно «труп», но его правилами пользуются до сих пор. Оно работает и это главное. В ZDE есть поддержка и CVS, и SVN; моя задача изучть оба способа контроля версий. Вопрос, что лучше, что хуже пока не стоит.

На данный момент есть вполне конкретная задача. Чтобы её решить мне не хватает некоторой теории на тему репозиториев. Вот и хотел узнать, может кто пользуется CVS в своих проектах.

Re: [CVS] объясните на пальцах

Добавлено: 2009-05-22 20:59:23
Гость
zg писал(а):интерисует каким макаром организовать автоматическое обновление некоторых файлов. В частности, у меня есть стандартные библиотеки (обычные PHP–файлы), которые на каждый сайт (у меня пректы — сайты) постоянные и только дорабатываются. Как мне надо организовать репозиторий и работу с ZDE, чтобы иметь всегда свежие версии библиотек в каждом проекте?
- в случае с RCS/CVS, наверное, сделать hardlink'и ,v-файлов на сервере или симлинки на папок на клиенте
- в svn через externals
- в git через submodule

Re: [CVS] объясните на пальцах

Добавлено: 2009-05-22 21:51:33
zg
Гость писал(а):наверное, сделать hardlink'и
всё дело происходит в условиях винды :smile:

Re: [CVS] объясните на пальцах

Добавлено: 2009-05-22 22:08:21
Гость
zg писал(а):
Гость писал(а):наверное, сделать hardlink'и
всё дело происходит в условиях винды :smile:
cygwin?
w:Hard link писал(а):The Windows API from Windows 2000 onwards includes a CreateHardLink() call to create hard links, DeleteFile() is used to remove them, and GetFileInformationByHandle() can be used to determine the number of hard links associated with a file.^[2] Hard links require an NTFS partition. Unix-like emulation or compatibility software running on Windows, such as Cygwin and Subsystem for UNIX-based Applications, allow the use of POSIX interfaces under Windows.

Re: [CVS] объясните на пальцах

Добавлено: 2009-05-22 22:11:26
Гость
впрочем, симлинки тоже должны работать

Re: [CVS] объясните на пальцах

Добавлено: 2009-05-23 7:55:34
zg
Гость писал(а):cygwin?
не, просто клиент cvs под винду, ему сервер не нужен, он работает в рамках файловой системы. Но даже не в этом суть. Задача состоит в том, чтобы сделать это средствами cvs, а не просто линки. Чтобы можно было зайти в проект и сделать ему обновление.

Re: [CVS] объясните на пальцах

Добавлено: 2009-05-23 20:26:54
Гость
zg писал(а):не, просто клиент cvs под винду
в википедии написано, что в Vista можно использовать mklink для создания hardlink'ов и symlink'ов. Другой способ - это копировать checkout'ные библиотеки в основной проект и править CVS/Entries. Например, так делал MPlayer во времена CVS.
zg писал(а):ему сервер не нужен, он работает в рамках файловой системы.
ок, ошибка в терминологии. Я имел в виду CVSROOT. CVSROOT может находится в локальной папке или в папке на удаленном хосте.
zg писал(а):Задача состоит в том, чтобы сделать это средствами cvs, а не просто линки. Чтобы можно было зайти в проект и сделать ему обновление.
нет такого искаропки в CVS, только хакая CVS/Entries можно получить что-то похожее на svn:externals.

Re: [CVS] объясните на пальцах

Добавлено: 2009-05-24 6:58:14
zg
Гость писал(а):что в Vista можно использовать mklink
да кому она нужна, виста -)))
Гость писал(а):нет такого искаропки в CVS
а что разве нельзя создать репозиторий с общими файлами и в каждом проекте просто их стягивать от туда?