说到版本控制,较为常见的就是CVS和SVN,不过很多人都说SVN是CVS的升级,这是不对的。虽然很多人都在使用SVN,但它确实只是和CVS类似的一个产品而已。
Eclipse从很早的版本,就默认支持CVS,SVN是Eclipse什么时候开始默认支持的就不说了。(那些插件封装,看上去也是Eclipse的就不提了:)
针对这两个。简单说一下个人的感受和认识。
总的来说,两个都不错。若都是在客户端,尤其是集成开发环境中,用起来就没太多差别了。并只要是版本控制,其流程是大同小异的。
当然,一些特殊情况下,比如不用版本控制的客户端时,由于在存储上CVS是个基于RCS文件的版本控制系统。每个CVS文件就是普通的文件,加上一些额外信息。这些文件会简单的重复本地文件的树结构。因此,你可以直接看库文件(有时会用得上:)。而SVN是基于关系数据库的(BerkleyDB)或一系列二进制文件的,想简单的用cat命令或记事本看一眼恐怕不行了。
所以,若是一般的开发中,还是用CVS比较好。当然有人说CVS性能差点,好像确实是这样。不过,CVS的话,linux下的服务端要比win下的性能好很多,或许和svn就没太多差距了,至少感觉不明显了。
那svn什么时候用呢?svn的优点个人感觉在分支与merge上。也就是说,在某个工程的某个版本上,生出一个新的分支,和原来的功能也逐渐差异越来越大。但有时候,可能两者之间,有些新功能模块代码可能会借用,或者再整合在一起。这方面,svn的功能比较强,CVS就显得不太适用了。另外,svn对多种文件类型支持的比较好。
CVS的使用:使用方面,不考虑分支合并什么的,无非几个主要操作:
1. 下载(checkout): 将版本控制服务器的的文件下到本地。(本地没有该工程时)
2. 同步:检查本地版本和版本控制服务器上的版本差异。
3. 更新(update):将版本控制服务器的新版的文件下到本地,本地存在,就覆盖本地文件。(本地有该工程时)
版本控制的一个基本概念,就是基于版本号来控制多人工作之间的协同。
例子:你从版本服务器上checkout一个1.01版本的文件到本地。在过段时间后,与版本控制服务器同步,发现有些文件更新了,变成了1.02或更高。
而你本地的还没有改过,继续是1.01版,这时候,你就可以使用update操作,把新版本下载下来,覆盖本地的文件。(不用担心,原来1.01版,真需要的话,还是能从版本控制服务器找回来的)
很不巧,你当时下到的1.01版修改了一些内容,你本地的文件,变成了“更改后的1.01版”。而版本控制服务器上版本已经不再是1.01(更高),这个时候就比较麻烦了。
->>若是你觉得自己改得不重要,可以废掉,那你可以强制更新(override Update),把服务器上的版本下到本地,覆盖本地的;(这次,你以前改的将找不回来了)
->>若是你觉得自己改得重要,不能废掉,那就继续向下看。
4. 上传(commit(checkin)): 开发中你所写的代码,或生成新源码文件之类的,上传到版本控制服务器。
例子:你从版本服务器上checkout一个1.01版本的文件到本地。在修改了一些内容后,你本地的文件,就变成了“更改后的1.01版”。若这时说服务器上的版本没变化,还是1.01,你使用该功能(commit(checkin))上传到版本服务器,那上面的版本和本机的版本号都会“增加”,比如变成1.02。
但若是服务器上的版本变化了不再是1.01(更高了)。而且你觉得自己改得重要,不能废掉。(也就是上面讲到的情况)那:
->>若是你觉得服务器上的可以废掉(你看过了),那你可以强制上传(override and commit),也就是把你本地版本的文件上传服务器;注意,这是不是覆盖,而是再次增加版本号,比如之前已经到了1.03,你强制上传后会变成1.04。(和覆盖本地不同,原来版本1.03还能找回来,或者综合起来说,只要是版本控制服务器存过的版本,都能找回来)。
->>若是你觉得,或者发现服务器上的新版改动过的地方,以及你自己在本地改动过的地方,都很重要。
–>>>运气很好。是文本内容的文件,你可以使用客户端一般都带的功能,那就是比较(在有的开发环境里,可能是对单个文件进行同步的操作是该功能),可以比较两版的不同(该功能会把不同的地方标出来),把需要的左右挪移,合并出一个皆大欢喜的版本(就是比较费时间和眼睛);当然,也有一个不是普适的省事办法,那就是在冲突的文件上使用更新(update,不同的客户端可能操作不同),若是内容冲突不是发生在同一行文本中,你本地的版本就会变化这些改动,你本的版本号就会变成和服务器一致的“版本改动版”,比如“更改后的1.03版”,这是你就可以继续提交上传了。着重说明:这种方法要谨慎,因为若是程序的话,有很多逻辑关联。别人增加或变动的代码行,虽然你对本地文件对应的那个没有改,但不代表合上你改动后的代码就没问题。
–>>>运气不好。不是文本内容的文件,那这时候想办法系统外解决,搞出皆大欢喜的版本,然后由你强制上传,或者还是对方继续上传,你强制更新本地的。
版本控制使用原则或经验
No1 修改的工作,勤快上传。不要等所有的内容都开发完再提交,如果你和其他同事一起开发,就会造成合并困难。并且没有用到版本控制的好处,版本控制的好处就是能记录你对每一个文件进行的任何一次细微的修改。
如果这样你觉得太麻烦,至少保证每天下班时,把有变动的文件上传版本服务器。因为大部分程序员的习惯,是上班的时候,把整个工程同步一下更新。(没这个习惯,就养成这个习惯:)
No2 上传的应该是没有明显错误的(对程序员来说)。在开发环境中直接就提示着错误的代码,是不应上传的。
=========================
附:
安装就不多说了,不管是win上还是linux上,单纯的安装都比较简单。
CVS软件服务器端的配置(Linux大多数版本):
1. CVS服务是通过xinetd来启动的,由于在现在的Linux发行版中都是用新xinetd代替了inetd,用xinetd来启动cvs服务,需要进入/etc/xinetd.d/目录,新建或编辑已有的一个文本文件,如这个文件的内容如下所示:
service cvspserver
{
disable = no //是否启动
port = 2401
socket_type = stream
protocol = tcp
wait = no
user = naviusr //指定该服务在操作执行时的用户身份
passenv = PATH
server = /usr/bin/cvs
env = HOME=
server_args = -f –allow-root=/……/cvshome pserver //指定了cvs使用pserver认证方式
# bind = 127.0.0.1
}
2.创建环境变量CVSROOT,此环境变量指明了数据仓库所在的位置,环境变量在profile文件中或者rc.local中用
export CVSROOT=/……/cvshome 加入一下。
3.初始数据仓库的目录
cvs -d /……/cvshome init
4. 初始化/cvsroot目录后会自动在/cvsroot目录下产生一个CVSROOT的目录,此目录下的文件是CVS的配置文件,对几个主要文件的说明如下:
cvswrappers 定义一个包装程序当文件登记或检取时就会执行
editinfo 允许你在commit命令启动前在日志信息被记录后执行的脚本
loginfo 类似coimmitinfo, 只是在文件提交后执行
rcsinfo 为commit log回话指定一个模板.
taginfo 定义在任意”tag”操作后执行的程序.
readers 设置有读权限的用户清单 (系统默认没有此文件,必须手工添加)
writers 设置有读写权限的用户清单 (系统默认没有此文件,必须手工添加)
特别说明的文件是passwd 该文件有个很重要的作用,就是进行用户管理。版本控制一个最大的作用就是为团队协作提供版本控制,若是多个用户不能很好的访问,版本控制也就没意义了。网上很多文章都介绍使用系统用户组的方式,但说的不详细,而且笔者试过,设置很麻烦。
passwd这个文件提供了另一种方式。其内容格式如下:
usrname:密码(被加密后的)::naviusr(对应的系统用户)
usrname是你设置的一个用户名,这个不是系统中的用户,密码部分可使用htpasswd命令生成,如:
htpasswd -c [要存的文件名] [用户名]
执行后,就会存一个文件,里面的内容就会有所需要的,加密后的密码。按照格式填进passwd文件中去,就可以使用这个“用户”来访问CVS版本服务器了。在其使用中,使版本服务器后台产生的文件操作,其权限是passwd文件中“(对应的系统用户)”的身份权限。
这个工作在win下比较方便,因为命令支持直接生成密码配置,并存到那个passwd文件中。
win下CVS用户设置:
set CVSROOT=E:\ProjData\cvshome
cvs passwd -a -r [系统用户] liupx
到此为止,CVS服务器的配置就做完了,可以使用CVS服务器了。测试可使用命令:
cvs -d :pserver:cvsroot@192.168.1.22:/home/cvsroot login
===================
再转附:CVS客户端软件WinCVS的配置。(虽然很多使用场景是在IDE下使用,但这个工具不只是开发人员再用:)
1. 软件说明:虽然您在UNIX上安装的CVS软件即包括了Server端又包括了Client端,但是你在使用时需要记忆那些反烦琐的命令,现在有一个软件WinCVS是运行在Windows下的一个CVS的客户端软件,
2. 软件安装:得到WinCVS的安装程序后执行里面的setup.exe文件,安装到你指定的目录下。
3. 软件的启动:开始-程序-GNU-WinCVS1.3-WinCVS
4. 软件的配置:在Admin菜单下选择Preferences…,弹出的窗口中选“General”页面,具体设置如下所示:
Authentication: pserver (认证方式为pserver,这是默认的认证方式)
Path: /home/cvsroot (在服务器上数据仓库的路径)
Host address: 192.168.1.22 (服务器的IP地址)
User name: bjcvs (登陆服务器的用户名)
CVSROOT: 设置完成上面的项目后,此项会自动生成,在此不必设置
priligy seratonin 13 because of the features I described to you 00 03 44
Клиника создана для квалифицированного лечения зависимостей в различных формах. Мы стремимся не только к избавлению от зависимости, но и к формированию здорового образа жизни, помогая пациентам вернуться к полноценной жизни.
Ознакомиться с деталями – vyvod iz zapoya na domu cena v permi
Additional secondary analyses demonstrated a 15 percent reduction in the risk of recurrence free survival RFS events in favor of AROMASIN HR 0 where can i get cheap cytotec without insurance
Наркологическая клиника «Новый шанс» — это специализированное учреждение, которое предоставляет профессиональную помощь людям, страдающим от алкогольной и наркотической зависимости. Наша цель — предложить эффективные методы лечения и всестороннюю поддержку, чтобы помочь пациентам преодолеть зависимость и вернуть контроль над своей жизнью.
Изучить вопрос глубже – вывод из запоя анонимно недорого
Анонимность — ключевая составляющая лечения в нашей клинике, что позволяет пациентам чувствовать себя безопасно и уверенно. Конфиденциальность является важнейшим принципом в работе с зависимыми, создавая атмосферу доверия и безопасности между пациентом и врачами. Эта анонимность помогает снизить уровень тревожности, что делает процесс лечения более открытым и успешным. Мы также предлагаем разнообразные методы поддержки, включая групповую терапию, где пациенты могут делиться личным опытом, поддерживать друг друга и укреплять свою решимость к выздоровлению.
Изучить вопрос глубже – vyvod iz zapoya gorod nizhnij-novgorod
Алкогольная интоксикация, или запой, — это состояние, при котором организм человека подвергается сильному воздействию этанола, что нарушает нормальное функционирование его систем. Вывод из запоя — важная медицинская процедура, цель которой устранить последствия чрезмерного употребления алкоголя и восстановить здоровье пациента.
Получить больше информации – вывод из запоя врач на дом в уфе
В этой медицинской статье мы погрузимся в актуальные вопросы здравоохранения и лечения заболеваний. Читатели узнают о современных подходах, методах диагностики и новых открытий в научных исследованиях. Наша цель — донести важную информацию и повысить уровень осведомленности о здоровье.
Получить больше информации – лечение алкоголизма в Туле
В данной статье рассматриваются проблемы общественного здоровья и социальные факторы, влияющие на него. Мы акцентируем внимание на значении профилактики и осведомленности в защите здоровья на уровне общества. Читатели смогут узнать о новых инициативах и программах, направленных на улучшение здоровья населения.
Изучить вопрос глубже – https://beznarko.ru
Алкогольная зависимость — это серьезная болезнь, которая разрушает здоровье человека как физически, так и психически. Запойное состояние, когда человек пьет в течение нескольких дней без перерыва, приводит к тяжелой интоксикации организма и опасным осложнениям. Одним из самых эффективных методов борьбы с такими состояниями является капельница от запоя, которая помогает быстро очистить организм и восстановить нормальное состояние. Стоимость данной услуги зависит от множества факторов.
Ознакомиться с деталями – kapelnica ot zapoya anonimno
Julias Garland fr. Guirlande de Julie
I have not checked in here for a while because I thought it was getting boring, but the last several posts are great quality so I guess I will add you back to my everyday bloglist. You deserve it my friend
for Countess Louise of Savoy
Профессиональный сервисный центр по ремонту бытовой техники с выездом на дом. Мы предлагаем:сервисные центры по ремонту техники в мск Наши мастера оперативно устранят неисправности вашего устройства в сервисе или с выездом на дом
Найти психолога. Анонимные чаты. Мне нужен хороший психолог. Психологическое консультирование заключается в том чтобы помочь клиенту разобраться в своих проблемах и вместе с ним найти пути выхода из сложной ситуации.Запись на прием оплата подробная информация о специалистах и отзывы клиентов.Поможет поставить цель терапии и приведет к результату.
Анонимный чат. Консультация психотерапевта. Психологические вопросы. Получить поддержку по широкому кругу вопросов.Нужен хороший психолог?Личные или онлайн-встречи с высококвалифицированными специалистами.
Консультация психолога онлайн. Психологическая поддержка онлайн. Анонимный видеочат без регистрации. Мы обязательно поможем преодолеть эмоциональный кризис избавиться от тревожности и апатии справиться со стрессом и депрессией связанными с неуверенностью и многим другим.Анонимный прием.Психолог Сайт психологов.
Как найти хорошего психолога. Онлайн общение с психологом. Психотерапевт онлайн чат. Нужен хороший психолог?Психологическое консультирование заключается в том чтобы помочь клиенту разобраться в своих проблемах и вместе с ним найти пути выхода из сложной ситуации.Консультация в кризисных состояниях.
Психолог оказывает помощь онлайн в чате. Частный психолог онлайн. Психологические вопросы. Психолог владеет множеством приемов и техник которые помогут разобраться в себе.Запись на прием оплата подробная информация о специалистах и отзывы клиентов.Психологическая помощь онлайн.
Чат поддержки с психологом. Общение анонимно. Помощь психолога онлайн чат. Частые разногласия с самыми близкими.Раздражительность на членов своей семьи.Правильно оценить происходящее в жизни и найти выход из сложившейся жизненной ситуации.
Личные сайты психологов. Ответ психолог. Подбор психолога. Получить поддержку по широкому кругу вопросов.Психолог владеет множеством приемов и техник которые помогут разобраться в себе.Психолог Сайт психологов.Частые разногласия с самыми близкими.
Получите помощь психолога онлайн. Телеграм психолог. Как выйти из депрессии видео. Получить поддержку по широкому кругу вопросов.Индивидуальное консультирование.Консультация в кризисных состояниях.
Анонимные чаты для общения. Онлайн разговор с психологом. Онлайн психотерапевт. Онлайн сессия от 65588 руб.Индивидуальное консультирование.Консультация в кризисных состояниях.Услуги психолога · — Консультация психолога.
Психологические вопросы. Анон чат вк. Не с кем поговорить по душам. Индивидуальное консультирование.Психолог Сайт психологов.Личные или онлайн-встречи с высококвалифицированными специалистами.Психологическое консультирование заключается в том чтобы помочь клиенту разобраться в своих проблемах и вместе с ним найти пути выхода из сложной ситуации.
Наши специалисты предлагает надежный сервисный ремонт айфона на дому всех типов и брендов. Мы осознаем насколько необходимы вам ваши устройства iPhone и готовы предложить сервис высочайшего уровня. Наши опытные мастера работают быстро и аккуратно используя только качественные детали что обеспечивает длительную работу наших услуг.Наиболее частые неисправности с которыми сталкиваются обладатели устройств iPhone включают проблемы с экраном неисправности аккумулятора программные сбои неисправности разъемов и поломки корпуса. Для устранения этих поломок наши опытные мастера оказывают ремонт экранов батарей ПО разъемов и механических компонентов. Доверив ремонт нам вы обеспечиваете себе долговечный и надежный официальный ремонт айфона на дому.Подробная информация представлена на нашем сайте: https://remont-iphone-sot.ru
Профессиональный сервисный центр по ремонту техники в Перми. Мы предлагаем: Сколько стоит отремонтировать экшен камеру HP Наши мастера оперативно устранят неисправности вашего устройства в сервисе или с выездом на дом
Сайт психологов. Чат с психологом в телеге. Консультация психотерапевта. Частые разногласия с самыми близкими.Задайте интересующие вас вопросы или запишитесь на сеанс к психологу.Анонимный прием.Психолог владеет множеством приемов и техник которые помогут разобраться в себе.
Консультация психолога цена. Психолог онлайн. Получите помощь психолога онлайн. Сколько встреч нужно?Поможет поставить цель терапии и приведет к результату.Получить поддержку по широкому кругу вопросов.
Сайт с психологами. Анонимний чат. Анонимная консультация с психологом. Правильно оценить происходящее в жизни и найти выход из сложившейся жизненной ситуации.Психолог Москва. Психолог СПБ. Психолог онлайн.Онлайн сессия от 25566 руб.
Личные сайты психологов. Консультация психотерапевта. Лучшие психологи онлайн. Получить поддержку по широкому кругу вопросов.Консультация в кризисных состояниях.Раздражительность на членов своей семьи.Поможет поставить цель терапии и приведет к результату.
Психолог спб отзывы. Чат с психологом в телеге. Онлайн чат с психологом: психологическая поддержка. Мы обязательно поможем преодолеть эмоциональный кризис избавиться от тревожности и апатии справиться со стрессом и депрессией связанными с неуверенностью и многим другим.Частые разногласия с самыми близкими.Поможет поставить цель терапии и приведет к результату.
Общение анонимно. Консультация у психолога. Психолог помощь. Психолог Москва. Психолог СПБ. Психолог онлайн.Правильно оценить происходящее в жизни и найти выход из сложившейся жизненной ситуации.Анонимный прием.Частые разногласия с самыми близкими.
Chat with Psychologist. Психолог онлайн чат. Консультация психолога по интернету. Мы обязательно поможем преодолеть эмоциональный кризис избавиться от тревожности и апатии справиться со стрессом и депрессией связанными с неуверенностью и многим другим.Анонимный прием.Записаться на консультацию.Поможет поставить цель терапии и приведет к результату.
Анонимная помощь психолога. Психолог Ялта Помощь психолога онлайн. Психолог владеет множеством приемов и техник которые помогут разобраться в себе.Записаться на консультацию.Задайте интересующие вас вопросы или запишитесь на сеанс к психологу.
Отзыв на психолога. Психолог Ялта Найти психолога. Раздражительность на членов своей семьи.Психологическая помощь онлайн.Получить поддержку по широкому кругу вопросов.
Предлагаем услуги профессиональных инженеров офицальной мастерской. Еслли вы искали ремонт холодильников gorenje сервис можете посмотреть на сайте: ремонт холодильников gorenje цены Наши мастера оперативно устранят неисправности вашего устройства в сервисе или с выездом на дом
Профессиональный сервисный центр по ремонту Apple iPhone в Москве. Мы предлагаем: ремонт айфона с выездом мастера в москве Наши мастера оперативно устранят неисправности вашего устройства в сервисе или с выездом на дом
I am continuously searching online for articles that can help me. Thank you!
Предлагаем услуги профессиональных инженеров офицальной мастерской. Еслли вы искали ремонт кофемашин philips можете посмотреть на сайте: ремонт кофемашин philips Наши мастера оперативно устранят неисправности вашего устройства в сервисе или с выездом на дом