Re: [Semi-OFF] CVS NT Delphi 3
On Sun, 23 Jul 2006 13:44:02 +0300, "Nikolay Trifonov" <[EMAIL PROTECTED]> wrote: >посоветуйте нормальный ньюсриадер, Fidolook Forte Agent
Re: [Semi-OFF] CVS NT Delphi 3
Hello, Roman Rokytskyy said the following on 23.07.2006 23:53: > ну не знаю... а как тогда жить, если изменения затрагивают несколько > классов - тут фикснули что-то, и там фикснули что-то, а фикс относится к > одному и тому же баг-репорту. получается, что на несколько классов одна > ревижн? Именно. Ведь логически - это одно изменение, хотя и затрагивает несколько классов. > может я слишком долго с cvs работал, но мне как-то его система ревижинов > роднее. Ну, никто не заставляет коммитить все одновременно. Поначалу можно коммитить каждый файл отдельно, пока не убедишься что система, принятая в subversion все-таки лучше ;-) >> А что не так с subclipse? А то я собирался попробовать eclipse+pydev для >> разработки на python... > > хмм... забираю слова обратно - они теперь используют JavaSVN. Когда-то, > когда я смотрел на него он работал через JNI и был глюкавый. Они умеют и то и другое. Можно выбирать. -- Oleg
Re: [Semi-OFF] CVS NT Delphi 3
Hello, Roman! You wrote on Fri, 21 Jul 2006 16:59:28 +0300: ??>> А разве cvs(Concurrent Versions System) не экземпляр семейства ??>> vcs(version control system)? Другое дело что в JEDI VCS нету вот этого ??>> самого concurrent, чего иногда хочется :) RVB> Не не экземпляр. Он работает по другому. Все VCS блокировщики, CVS RVB> никого не блокирует. Продолжая аналогию - Firebird - не РСУБД, т.к. версионник, ибо "все РСУБД - блокировщики" ... :-D :-D :-D -- -=Одна голова - хоpошо, а с тyловищем лyчше=- With best regards, Nikolay Ponomarenko
Re: [Semi-OFF] CVS NT Delphi 3
Hello, Roman! You wrote on Sun, 23 Jul 2006 18:25:56 +0200: RR> А если уж так хочется отслеживать изменения констант RR> в табличке, то придется для этих констант создать RR> insert_constant.sql и перед заливкой чистить табличку RR> (мирясь с возможностью, что кто-то добавил свои RR> константы и ты их потрешь). Это вообще легко обходится. Удаляешь не все константы, а только "свои". Для этого можно в табличке констант какой-либо признак "хозяина" константы завести. Вариантов много. Удач -- Alexander A. Venikov, Tobolsk, Russia Real e-mail address is venixtntobru
Re: [Semi-OFF] CVS NT Delphi 3
"Roman Rokytskyy" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED] > >> á ÒÁÚ×Å × ÔÅËÓÔÏ×ÏÍ dfm ÓÔÒÏËÉ ÐÏÍÅÎÑÔÓÑ ÎÅ ÍÏÇÕÔ? > > íÏÇÕÔ. âÕÄÅÔ ÔÁ ÖÅ ÐÒÏÂÌÅÍÁ - ×ÙÑÓÎÅÎÉÑ ÏÔÌÉÞÉÊ ÏÔ ÐÒÅÄÙÄÕÝÅÊ ×ÅÒÓÉÉ > ÕÓÌÏÖÎÉÔÓÑ É ÂÅÚ ÒÁÓÛÉÒÅÎÙÈ ËÏÍÍÅÎÔÁÒÉÅ× ÎÅ ÏÂÏÊÔÉÓØ. ÷ÏÐÒÏÓ ÔÏÌØËÏ × > ÔÏÍ - ÎÕÖÎÏ ÌÉ ÜÔÏ ôÅÂÅ ÉÌÉ ÖÅ ÄÏÓÔÁÔÏÞÎÏ ÄÏÓÔÕÐÁ Ë ËÏÎËÒÅÔÎÏÊ ×ÅÒÓÉÉ? ÷ ÏÓÎÏ×ÎÏÍ ÜÔÏ ××ÓÅ ÚÁÔÅ×ÁÅÔÓÑ ×ÏÔ ÄÌÑ ÞÅÇÏ: 1) ÅÓÔØ ÏÄÉÎ ÐÒÏÅËÔ, É ÅÓÔØ 5 ËÌÉÅÎÔÏ× ÄÌÑ ËÏÔÏÒÙÈ ÉÚÍÅÎÅÎÉÑ × ÐÒÏÅËÔÅ ÂÏÌØÛÉÅ É ÐÒÉÛÌÏÓØ ÓÄÅÌÁÔØ ÐÏÌÎÏÓÔØÀ ÏÔÄÅÌØÎÕÀ ÒÁÚÒÁÂÏÔËÕ (ÉÓÈÏÄÎÉËÉ É ÂÁÚÁ × ÄÒÕÇÏÍ ËÁÔÁÌÏÇÅ).. é ÐÅÒ×ÙÊ ÉÚ ËÌÉÅÎÔÏ× ÐÒÏÓÉÔ ××ÅÓÔÉ ÆÕÎËÃÉÀ, ËÏÔÏÒÁÑ ËÏÇÄÁ-ÔÏ ÄÅÌÁÌÁÓØ ÄÌÑ ×ÔÏÒÇÏ ËÌÉÅÎÔÁ. ÓÌÉ ÂÙ ÂÙÌ cvs (ÉÌÉ ÞÔÏ-ÔÏ ÐÏÄÏÂÎÏÅ) ÔÏ ÐÒÏÓÔÏ ÏÔËÒÙÌ ÂÙ ÉÓÔÏÒÉÀ, ÐÏÓÍÏÔÒÅÌ ÞÔÏ ÉÍÅÎÎÏ ÎÁÄÏ ÉÚÍÅÎÉÔ × ÐÒÏÅËÔÅ: ÆÕÎËÃÉÉ ÐÅÒÅÐÉÓÁÔØ, × ÂÁÚÅ ÐÒÏÃÅÄÕÒÕ ÎÅÍÎÏÇÏ ÐÏÍÅÎÑÔØ É Ô.Ä.) É ÐÅÒÅÎÅÓ ÉÚÍÅÎÅÎÉÑ ×ÒÕÞÎÕÀ ÄÌÑ ÐÅÒ×ÏÇÏ ËÌÉÅÎÔÁ. á ÓÅÊÞÁÓ ÐÒÉÈÏÄÉÔÓÑ ÐÏÌÎÏÓÔØÀ ÐÅÒÅÓÍÁÔÒÉ×ÁÔØ ÐÒÏÅËÔ, ÉÝÁ ÉÚÍÅÎÅÎÉÑ × ÆÕÎËÃÉÏÎÁÌØÎÏÓÔÉ. 2) ÅÓÔØ ×ÔÏÒÏÊ ÐÒÏÅËÔ Ó ÐÏÄÐÉÓËÏÊ ÎÁ ÇÏÄÏ×ÏÅ ÏÂÎÏ×ÌÅÎÉÅ. ðÒÉ ÜÔÏÍ ÉÓÐÒÁ×ÌÅÎÉÅ ÏÛÉÂÏË ÐÒÏÄÏÌÖÁÅÔÓÑ É ÐÏÓÌÅ ÇÏÄÏ×ÏÇÏ ÏÂÎÏ×ÌÅÎÉÑ, ÅÓÌÉ ËÌÉÅÎÔÕ ÜÔÏ ÔÒÅÂÕÅÔÓÑ. îÏ ÎÏ×ÕÀ ×ÅÒÓÉÀ ÏÎ ÉÍÅÅÔ ÐÒÁ×Ï ÐÏÌÕÞÉÔØ ÔÏÌØËÏ ÐÏÓÌÅ ÎÏ×ÏÊ ÐÏÄÐÉÓËÉ. äÏÐÕÓÔÉÍ ÓÅÊÞÁÓ ×ÅÒÓÉÑ ÐÒÏÇÉ 2.0, Á Õ ËÌÉÅÎÔÁ ÅÓÔØ ÐÏÌÎÏÓÔØÀ ÅÇÏ ÕÓÔÒÁÉ×ÁÀÝÁÑ ×ÅÒÓÉÑ 1.5, ÎÏ Ó ÎÅÕÓÔÒÁÉ×ÁÀÝÉÍ ÅÇÏ ÇÌÀËÏÍ. îÁÄÏ ÉÓÐÒÁ×ÉÔØ ÇÌÀË É ×ÙÓÌÁÔØ ÅÍÕ ÏÂÎÏ×ÌÅÎÉÅ. ÷ÏÔ ÉÍÅÎÎÏ ÉÚ-ÚÁ ÜÔÉÈ Ä×ÕÈ ×ÅÝÅÊ Ñ É ÓÍÏÔÒÀ ÎÁ cvs ÉÌÉ svn > èÍÍÍ... É ËÁË ÔÙ ÓÏÂÉÒÁÅÛÓÑ ÔÏÇÄÁ ×ÓÅ ÉÚ create.sql ÐÏÌÕÞÉÔØ? ðÅÒÅÄ > ÒÅÌÉÚÏÍ ÄÅÌÁÔØ diff ÐÏÓÌÅÄÎÅÊ É ÐÒÅÄÙÄÕÝÅÊ ×ÅÒÓÉÉ? ôÁË ×ÅÄØ ÜÔÏ ÎÅ > ÜË×É×ÁÌÅÎÔÎÏ create.sql ÉÚ ÐÒÅÄÙÄÕÝÅÊ ×ÅÒÓÉÉ ÐÌÀÓ ÎÁËÁÔËÁ ÉÚÍÅÎÅÎÉÊ. > > ðÒÉ×ÏÖÕ ÐÒÉÍÅÒ: > > éÓÈÏÄÎÁÑ ÓÉÔÕÁÃÉÑ: Õ ôÅÂÑ ÅÓÔØ ÂÁÚÁ ×ÅÒÓÉÉ 1.0. ÷ ×ÅÒÓÉÉ 1.1 ôÙ ÄÒÏÐÁÅÛØ > NOT NULL ÏÇÒÁÎÉÞÅÎÉÅ ÎÁ ÏÄÎÕ ÉÚ ËÏÌÏÎÏË. > > ðÏÐÙÔËÁ ÒÅÛÅÎÉÑ ÞÅÒÅÚ create.sql × ×ÅÒÓÉÉ 1.1: > > DROP TABLE myTable; > CREATE TABLE myTable ( > > myChangedColumn INTEGER /* NOT NULL */, > ... > ); > > ëÁË ôÙ ÐÏÎÉÍÁÅÛØ, ÚÄÅÓØ ÍÅÛÁÅÔ DROP TABLE, Á ÂÅÚ ÎÅÇÏ CREATE TABLE ÎÅ > ÐÏÌÕÞÉÔÓÑ. ðÒÁ×ÉÌØÎÏÅ ÒÅÛÅÎÉÅ ×ÏÚÍÏÖÎÏ ÔÏÌØËÏ ÞÅÒÅÚ update.sql. ðÒÁ×ÉÌØÎÏÅ ÒÅÛÅÎÉÅ ÂÕÄÅÔ, ÅÓÌÉ ÐÏÌÕÞÉÔÓÑ create.sql ÉÍÅÎÎÏ ÏÔ ×ÅÒÓÉÉ 1.1. ô.Å. ÓÏÚÄÁÅÍ ÎÏ×ÕÀ ÂÁÚÕ ÉÍÅÎÎÏ ÉÚ create.sql 1.1, ÎÏ ÉÎÏÇÄÁ ÎÁÄÏ ×ÉÄÅÔØ ÉÚÍÅÎÅÎÉÑ ÐÏ ÓÒÁ×ÎÅÎÉÀ Ó 1.1 > ïÔÄÅÌØÎÙÈ ÓÌÕÞÁÅ× ÍÎÏÖÅÓÔ×Ï - ÚÄÅÓØ ×ÓÅ ÎÅ ÐÒÅÄÕÓÍÏÔÒÉÛØ. ÷ÏÚÍÏÖÎÏ × > ÎÅËÏÔÏÒÙÈ ÓÌÕÞÁÑÈ ÐÒÉÄÅÔÓÑ ÐÏÖÅÒÔ×Ï×ÁÔØ ×ÏÚÍÏÖÎÏÓÔØÀ ÐÏÓÍÏÔÒÅÔØ ÒÁÚÎÉÃÕ > ÍÅÖÄÕ Ä×ÕÍÑ ×ÅÒÓÉÑÍÉ (ÔÏ-ÅÓÔØ ×ÏÚÍÏÖÎÏÓÔØ ÏÓÔÁÎÅÔÓÑ, ÎÏ ÂÕÄÅÔ ÒÁÂÏÔÁÔØ ÎÅ > ÔÁË ÎÁÇÌÑÄÎÏ). îÏ ô×ÏÉ ÐÒÏÂÌÅÍÙ × ÏÂÝÅÍ ÓÌÕÞÁÅ Ó ÒÁÚÕÍÎÙÍÉ ÚÁÔÒÁÔÁÍÉ > ×ÒÅÍÅÎÉ ÎÅ ÒÅÛÉÔØ. á ÐÏÓÅÍÕ ÔÁÍ, ÇÄÅ ÎÁÄÏ, ÐÒÏÓÔÏ ÄÏÂÁ×ÌÑÊ ÎÏÒÍÁÌØÎÙÅ > ËÏÍÍÅÎÔÁÒÉÉ, ËÏÇÄÁ ÄÏÂÁ×ÌÑÅÛØ ÉÚÍÅÎÅÎÉÑ × ÒÅÐÏÚÉÔÏÒÉÊ. ñ ×ÙÛÅ ÏÐÉÓÁÌ ÉÍÅÎÎÏ Ó×ÏÉ ÐÒÏÂÌÅÍÙ, ÉÚ-ÚÁ ËÏÔÏÒÙÈ Ñ É ÐÙÔÁÀÓØ ÞÔÏ-ÔÏ ÐÒÅÄÐÒÉÎÉÍÁÔØ.
Re: [Semi-OFF] CVS NT Delphi 3
Крэшей сервера не было, а обрывы связи были... Но даже не в этом дело. Обычно один коммит - это группа изменений в нескольких файлах (например someclass.cpp + someclass.h) и несмотря на то что это несколько файлов - логически это должен быть один коммит и один revision. ну не знаю... а как тогда жить, если изменения затрагивают несколько классов - тут фикснули что-то, и там фикснули что-то, а фикс относится к одному и тому же баг-репорту. получается, что на несколько классов одна ревижн? может я слишком долго с cvs работал, но мне как-то его система ревижинов роднее. Плюс мне очень важна поддержка svn из Eclipse, а там она еще не совсем полноценна. А что не так с subclipse? А то я собирался попробовать eclipse+pydev для разработки на python... хмм... забираю слова обратно - они теперь используют JavaSVN. Когда-то, когда я смотрел на него он работал через JNI и был глюкавый. Единственное, что пока смущает - это факт, что в Eclipse приняли Subvesive, а не Subclipse. Но с другой стороны это пофиг - файлы на диске не меняются. Но я пока жду, когда мы на svn перейдем - тогда и буду тщательнее тестировать. Если найдешь софт который может экспортировать данные из одной базы, то написать батник который будет пробегать все поддиректории особого труда не составит. В svn можно этот батник вставить, например, в pre-commit hook для пущей автоматизации процесса. И он вместо бинарника в репозиторий запишет текстовый файл? А назад как? Или я что-то не так понял? Просто при каждом коммите проекта будут проверяться изменения в базе, и вливаться в этот же репозиторий ;-) А что будет с теми, что делает checkout из репозитория? Роман
Re: [Semi-OFF] CVS NT Delphi 3
Hello, Roman Rokytskyy said the following on 23.07.2006 20:28: > >> Нет. Неатомарность коммитов в CVS - это плохо даже в случае одного >> разработчика. По крайней мере, для меня это так ;) > > У тебя часто случались крэши сервера во время коммита? Крэшей сервера не было, а обрывы связи были... Но даже не в этом дело. Обычно один коммит - это группа изменений в нескольких файлах (например someclass.cpp + someclass.h) и несмотря на то что это несколько файлов - логически это должен быть один коммит и один revision. > Плюс мне очень важна поддержка svn из Eclipse, а там она еще не > совсем полноценна. А что не так с subclipse? А то я собирался попробовать eclipse+pydev для разработки на python... >>> Если найдешь софт который может экспортировать данные из одной >>> базы, то написать батник который будет пробегать все >>> поддиректории особого труда не составит. >> >> В svn можно этот батник вставить, например, в pre-commit hook для >> пущей автоматизации процесса. > > И он вместо бинарника в репозиторий запишет текстовый файл? А назад > как? Или я что-то не так понял? Просто при каждом коммите проекта будут проверяться изменения в базе, и вливаться в этот же репозиторий ;-) -- Oleg
Re: [Semi-OFF] CVS NT Delphi 3
1) что для меня будет лучше cvs или svn если я: а) один разработчик, проектов много думаю, что пофиг. Нет. Неатомарность коммитов в CVS - это плохо даже в случае одного разработчика. По крайней мере, для меня это так ;) У тебя часто случались крэши сервера во время коммита? У меня за 6 лет работы с ним еще ни разу (и на работе по локалке, и в Firebird по интернету, как дайлапу так и ДСЛ)... так что я пока этот аргумент серъезным не считаю. Но это лично мое мнение. svn лучше в другом - переименование объекта не приводит к пропаже истории изменений, как в cvs. Но я пока на svn не перешел - на работе и cvs хватает, а Firebird еще на svn не переехал (но планируется). Плюс мне очень важна поддержка svn из Eclipse, а там она еще не совсем полноценна. Для Николая: если переименовать файл в cvs, то его старая версия будет обозначена как уделенная, а новый файл придется добавлять в репозиторий начиная с версии 1.1. Вся история изменений до переименования будет привязана к старому файлу, а посему нельзя так просто ее добыть. 2) есть один проект на двух-трех клиентов, для каждого клиента надо вносить незначительные изменения именно под него. Как это можно проконтролировать кроме как заводить разные каталоги с исходниками. >>> Не каталоги, а разные branches (ветки). Хотя с точки зрения организации кода - неправильный подход. Проблемы начнутся, когда надо будет синхронизировать ветки (например фикс бага, который надо дать всем клиентам). В svn для этого есть команда merge. Т.е. можно, например, изменения, сделанные в одной из branches начиная с revision X по revision Y влить в trunk или в другой branch. Угу, в CVS она тоже есть. И что? Если у человека 5 веток от HEAD и он внес в каждой из них свои особенные изменения, а потом глобальные в HEAD, то сливать это ручками совсем не так просто (см. исходную предпосылку - "каждому клиенту - свою версию"). А если речь заходит о branch от branch, то можно запутатся, особенно если модули в cvs между собой завязаны (например основная программа и библиотеки, утилиты, компоненты). Если найдешь софт который может экспортировать данные из одной базы, то написать батник который будет пробегать все поддиректории особого труда не составит. В svn можно этот батник вставить, например, в pre-commit hook для пущей автоматизации процесса. И он вместо бинарника в репозиторий запишет текстовый файл? А назад как? Или я что-то не так понял? Роман
Re: [Semi-OFF] CVS NT Delphi 3
Hello, Roman Rokytskyy said the following on 23.07.2006 12:57: >> 1) что для меня будет лучше cvs или svn если я: >>а) один разработчик, проектов много > > думаю, что пофиг. Нет. Неатомарность коммитов в CVS - это плохо даже в случае одного разработчика. По крайней мере, для меня это так ;) И вообще - http://better-scm.berlios.de/comparison/comparison.html >> 2) есть один проект на двух-трех клиентов, для каждого клиента надо >> вносить незначительные изменения именно под него. Как это можно >> проконтролировать кроме как заводить разные каталоги с исходниками. > > Не каталоги, а разные branches (ветки). Хотя с точки зрения организации > кода - неправильный подход. Проблемы начнутся, когда надо будет > синхронизировать ветки (например фикс бага, который надо дать всем > клиентам). В svn для этого есть команда merge. Т.е. можно, например, изменения, сделанные в одной из branches начиная с revision X по revision Y влить в trunk или в другой branch. > Если найдешь софт который может экспортировать данные из одной базы, то > написать батник который будет пробегать все поддиректории особого труда > не составит. В svn можно этот батник вставить, например, в pre-commit hook для пущей автоматизации процесса. -- Oleg
Re: [Semi-OFF] CVS NT Delphi 3
Nikolay Trifonov wrote: Дык, я и говорю о том, что тут и не надо его использовать... Типа, при установке обновления, проверяем версию базы и версию программы... Накатываем соответственные изменения каскадно до текущей версии... В cvs и svn проблема в другом - для них важен порядок строк. И если по какой-то причине у Тебя радикально поменяется порядок создания таблиц или заливки справочников, то искать отличия от предыдущей версии файла будет сложно. А разве в текстовом dfm строки поменятся не могут? Могут. Будет та же проблема - выяснения отличий от предыдущей версии усложнится и без расширеных комментариев не обойтись. Вопрос только в том - нужно ли это Тебе или же достаточно доступа к конкретной версии? В этом случае insert.sql и множество update.sql предпочтительней. Я так клиентам новые версии раздаю: ставлю базу, и при обновлении экзенишника последний коректирует базу до новой версии. Логично. Ну хорошо, если возможны глюки, то может тогда лучше делаем create.sql, а все вносимые изменения в базу делаем через ibexpert, включив в нем функцию логирования изменений в базе. Но тогда не получиться отследить изменения в таблицах (я в некоторых из них константы храню). Соответственно вариант с update.sql неподходит, или я что-то не так понимаю ? Хммм... и как ты собираешся тогда все из create.sql получить? Перед релизом делать diff последней и предыдущей версии? Так ведь это не эквивалентно create.sql из предыдущей версии плюс накатка изменений. Привожу пример: Исходная ситуация: у Тебя есть база версии 1.0. В версии 1.1 Ты дропаешь NOT NULL ограничение на одну из колонок. Попытка решения через create.sql в версии 1.1: DROP TABLE myTable; CREATE TABLE myTable ( myChangedColumn INTEGER /* NOT NULL */, ... ); Как Ты понимаешь, здесь мешает DROP TABLE, а без него CREATE TABLE не получится. Правильное решение возможно только через update.sql. А если уж так хочется отслеживать изменения констант в табличке, то придется для этих констант создать insert_constant.sql и перед заливкой чистить табличку (мирясь с возможностью, что кто-то добавил свои константы и ты их потрешь). Отдельных случаев множество - здесь все не предусмотришь. Возможно в некоторых случаях придется пожертвовать возможностью посмотреть разницу между двумя версиями (то-есть возможность останется, но будет работать не так наглядно). Но Твои проблемы в общем случае с разумными затратами времени не решить. А посему там, где надо, просто добавляй нормальные комментарии, когда добавляешь изменения в репозиторий. Роман
Re: [Semi-OFF] CVS NT Delphi 3
>> äÙË, Ñ É ÇÏ×ÏÒÀ Ï ÔÏÍ, ÞÔÏ ÔÕÔ É ÎÅ ÎÁÄÏ ÅÇÏ ÉÓÐÏÌØÚÏ×ÁÔØ... >> ôÉÐÁ, ÐÒÉ ÕÓÔÁÎÏ×ËÅ ÏÂÎÏ×ÌÅÎÉÑ, ÐÒÏ×ÅÒÑÅÍ ×ÅÒÓÉÀ ÂÁÚÙ É ×ÅÒÓÉÀ >> ÐÒÏÇÒÁÍÍÙ... îÁËÁÔÙ×ÁÅÍ ÓÏÏÔ×ÅÔÓÔ×ÅÎÎÙÅ ÉÚÍÅÎÅÎÉÑ ËÁÓËÁÄÎÏ ÄÏ ÔÅËÕÝÅÊ >> ×ÅÒÓÉÉ... > > > ÷ cvs É svn ÐÒÏÂÌÅÍÁ × ÄÒÕÇÏÍ - ÄÌÑ ÎÉÈ ×ÁÖÅÎ ÐÏÒÑÄÏË ÓÔÒÏË. é ÅÓÌÉ ÐÏ > ËÁËÏÊ-ÔÏ ÐÒÉÞÉÎÅ Õ ôÅÂÑ ÒÁÄÉËÁÌØÎÏ ÐÏÍÅÎÑÅÔÓÑ ÐÏÒÑÄÏË ÓÏÚÄÁÎÉÑ ÔÁÂÌÉà ÉÌÉ > ÚÁÌÉ×ËÉ ÓÐÒÁ×ÏÞÎÉËÏ×, ÔÏ ÉÓËÁÔØ ÏÔÌÉÞÉÑ ÏÔ ÐÒÅÄÙÄÕÝÅÊ ×ÅÒÓÉÉ ÆÁÊÌÁ ÂÕÄÅÔ > ÓÌÏÖÎÏ. á ÒÁÚ×Å × ÔÅËÓÔÏ×ÏÍ dfm ÓÔÒÏËÉ ÐÏÍÅÎÑÔÓÑ ÎÅ ÍÏÇÕÔ? ÷ ÜÔÏÍ ÓÌÕÞÁÅ insert.sql É ÍÎÏÖÅÓÔ×Ï update.sql > ÐÒÅÄÐÏÞÔÉÔÅÌØÎÅÊ. ñ ÔÁË ËÌÉÅÎÔÁÍ ÎÏ×ÙÅ ×ÅÒÓÉÉ ÒÁÚÄÁÀ: ÓÔÁ×ÌÀ ÂÁÚÕ, É ÐÒÉ ÏÂÎÏ×ÌÅÎÉÉ ÜËÚÅÎÉÛÎÉËÁ ÐÏÓÌÅÄÎÉÊ ËÏÒÅËÔÉÒÕÅÔ ÂÁÚÕ ÄÏ ÎÏ×ÏÊ ×ÅÒÓÉÉ. îÕ ÈÏÒÏÛÏ, ÅÓÌÉ ×ÏÚÍÏÖÎÙ ÇÌÀËÉ, ÔÏ ÍÏÖÅÔ ÔÏÇÄÁ ÌÕÞÛÅ ÄÅÌÁÅÍ create.sql, Á ×ÓÅ ×ÎÏÓÉÍÙÅ ÉÚÍÅÎÅÎÉÑ × ÂÁÚÕ ÄÅÌÁÅÍ ÞÅÒÅÚ ibexpert, ×ËÌÀÞÉ× × ÎÅÍ ÆÕÎËÃÉÀ ÌÏÇÉÒÏ×ÁÎÉÑ ÉÚÍÅÎÅÎÉÊ × ÂÁÚÅ. îÏ ÔÏÇÄÁ ÎÅ ÐÏÌÕÞÉÔØÓÑ ÏÔÓÌÅÄÉÔØ ÉÚÍÅÎÅÎÉÑ × ÔÁÂÌÉÃÁÈ (Ñ × ÎÅËÏÔÏÒÙÈ ÉÚ ÎÉÈ ËÏÎÓÔÁÎÔÙ ÈÒÁÎÀ). óÏÏÔ×ÅÔÓÔ×ÅÎÎÏ ×ÁÒÉÁÎÔ Ó update.sql ÎÅÐÏÄÈÏÄÉÔ, ÉÌÉ Ñ ÞÔÏ-ÔÏ ÎÅ ÔÁË ÐÏÎÉÍÁÀ ?
Re: [Semi-OFF] CVS NT Delphi 3
А может это дело держать в основной/вспомогательной базе?.. Типа, версия 0.0.1 -> Create.sql А для остальных - нарастающий Update.sql... Так ведь если svn умеет запоминать только изменения в файлах, а не файл целиком, то можно и один sql Дык, я и говорю о том, что тут и не надо его использовать... Типа, при установке обновления, проверяем версию базы и версию программы... Накатываем соответственные изменения каскадно до текущей версии... В cvs и svn проблема в другом - для них важен порядок строк. И если по какой-то причине у Тебя радикально поменяется порядок создания таблиц или заливки справочников, то искать отличия от предыдущей версии файла будет сложно. В этом случае insert.sql и множество update.sql предпочтительней. Роман
Re: [Semi-OFF] CVS NT Delphi 3
"Nikolay Trifonov" wrote in message news:[EMAIL PROTECTED] >>А может это дело держать в основной/вспомогательной базе?.. >>Типа, версия 0.0.1 -> Create.sql >>А для остальных - нарастающий Update.sql... > Так ведь если svn умеет запоминать только изменения в файлах, а не файл > целиком, то можно и один sql Дык, я и говорю о том, что тут и не надо его использовать... Типа, при установке обновления, проверяем версию базы и версию программы... Накатываем соответственные изменения каскадно до текущей версии... -- [http://bakh.spb.ru] [email:bob#bakh.spb.ru] [icq:1608235]
Re: [Semi-OFF] CVS NT Delphi 3
ôÁË ×ÅÄØ ÅÓÌÉ svn ÕÍÅÅÔ ÚÁÐÏÍÉÎÁÔØ ÔÏÌØËÏ ÉÚÍÅÎÅÎÉÑ × ÆÁÊÌÁÈ, Á ÎÅ ÆÁÊÌ ÃÅÌÉËÏÍ, ÔÏ ÍÏÖÎÏ É ÏÄÉÎ sql PS îÅÍÎÏÇÏ ÏÔÏÊÄÕ ÏÔ ÔÅÍÙ, ÎÏ ÓÐÒÏÓÉÔØ ÂÏÌØÛÅ ÎÅÇÄÅ: ÐÏÓÏ×ÅÔÕÊÔÅ ÎÏÒÍÁÌØÎÙÊ ÎØÀÓÒÉÁÄÅÒ, ÔÁË ËÁË × news reader ÐÒÏÂÌÅÍÙ Ó ËÏÄÉÒÏ×ËÏÊ × ÜÔÏÊ ËÏÎÆÅÒÅÎÃÉÉ, Á ÏÔ Outlok Express ÈÏÞÅÔÓÑ ÕÊÔÉ ÒÁÚ É ÎÁ×ÓÅÇÄÁ "Vladimir A.Bakhvaloff" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED] > "Nikolay Trifonov" <[EMAIL PROTECTED]> wrote in message > news:[EMAIL PROTECTED] >> úÎÁÞÉÔ ÂÕÄÕ ÄÅÌÁÔØ ÔÁË: ÜËÓÐÏÒÔÉÒÏ×ÁÔØ ÂÁÚÕ × ÏÄÉÎ É ÔÏÔ ÖÅ ÔÅËÓÔÏ×ÉË É >> ÏÔÄÁ×ÁÔØ ÅÇÏ ÎÁ ÓØÅÄÅÎÉÅ cvs. > >á ÍÏÖÅÔ ÜÔÏ ÄÅÌÏ ÄÅÒÖÁÔØ × ÏÓÎÏ×ÎÏÊ/×ÓÐÏÍÏÇÁÔÅÌØÎÏÊ ÂÁÚÅ?.. >ôÉÐÁ, ×ÅÒÓÉÑ 0.0.1 -> Create.sql >á ÄÌÑ ÏÓÔÁÌØÎÙÈ - ÎÁÒÁÓÔÁÀÝÉÊ Update.sql... > > -- > [http://bakh.spb.ru] [email:bob#bakh.spb.ru] [icq:1608235]
Re: [Semi-OFF] CVS NT Delphi 3
"Nikolay Trifonov" wrote in message news:[EMAIL PROTECTED] > Значит буду делать так: экспортировать базу в один и тот же текстовик и > отдавать его на сьедение cvs. А может это дело держать в основной/вспомогательной базе?.. Типа, версия 0.0.1 -> Create.sql А для остальных - нарастающий Update.sql... -- [http://bakh.spb.ru] [email:bob#bakh.spb.ru] [icq:1608235]
Re: [Semi-OFF] CVS NT Delphi 3
Значит буду делать так: экспортировать базу в один и тот же текстовик и отдавать его на сьедение cvs. Только посоветуйте три вещи: 1) что для меня будет лучше cvs или svn если я: а) один разработчик, проектов много думаю, что пофиг. б) в любой момент времени хочу вернуться например на исходники предыдущей версии программы или даже годовой давности, что-то там подправить, отдать заказчику (как то это дело отследить в cvs и т.п.) и спокойно продолжить разработку новой версии. Для cvs тебе надо будет разобратся, что такое branch и что такое tag. Насколько я знаю, в svn немного подругому, но добится этого результата сможешь и там без проблем. в) ну и чо там еще может понадобиться :) 2) есть один проект на двух-трех клиентов, для каждого клиента надо вносить незначительные изменения именно под него. Как это можно проконтролировать кроме как заводить разные каталоги с исходниками. Не каталоги, а разные branches (ветки). Хотя с точки зрения организации кода - неправильный подход. Проблемы начнутся, когда надо будет синхронизировать ветки (например фикс бага, который надо дать всем клиентам). Значительно проще отрефакторить Твой код так, что изменения специфичные какому-то клиенту выносятся в совсем другой модуль, а главная программа работает с этим модулем через общий интерфейс. 3) исход из перечистенного ищется софт, который может просканировать определенный каталог вместе с подкаталогами, найти все fdb и экспортировать их в текстовый скрипт вместе с данными (скрипт расположить рядом с fdb назвав его так же) Если найдешь софт который может экспортировать данные из одной базы, то написать батник который будет пробегать все поддиректории особого труда не составит. Роман
Re: [Semi-OFF] CVS NT Delphi 3
úÎÁÞÉÔ ÂÕÄÕ ÄÅÌÁÔØ ÔÁË: ÜËÓÐÏÒÔÉÒÏ×ÁÔØ ÂÁÚÕ × ÏÄÉÎ É ÔÏÔ ÖÅ ÔÅËÓÔÏ×ÉË É ÏÔÄÁ×ÁÔØ ÅÇÏ ÎÁ ÓØÅÄÅÎÉÅ cvs. ôÏÌØËÏ ÐÏÓÏ×ÅÔÕÊÔÅ ÔÒÉ ×ÅÝÉ: 1) ÞÔÏ ÄÌÑ ÍÅÎÑ ÂÕÄÅÔ ÌÕÞÛÅ cvs ÉÌÉ svn ÅÓÌÉ Ñ: Á) ÏÄÉÎ ÒÁÚÒÁÂÏÔÞÉË, ÐÒÏÅËÔÏ× ÍÎÏÇÏ Â) × ÌÀÂÏÊ ÍÏÍÅÎÔ ×ÒÅÍÅÎÉ ÈÏÞÕ ×ÅÒÎÕÔØÓÑ ÎÁÐÒÉÍÅÒ ÎÁ ÉÓÈÏÄÎÉËÉ ÐÒÅÄÙÄÕÝÅÊ ×ÅÒÓÉÉ ÐÒÏÇÒÁÍÍÙ ÉÌÉ ÄÁÖÅ ÇÏÄÏ×ÏÊ ÄÁ×ÎÏÓÔÉ, ÞÔÏ-ÔÏ ÔÁÍ ÐÏÄÐÒÁ×ÉÔØ, ÏÔÄÁÔØ ÚÁËÁÚÞÉËÕ (ËÁË ÔÏ ÜÔÏ ÄÅÌÏ ÏÔÓÌÅÄÉÔØ × cvs É Ô.Ð.) É ÓÐÏËÏÊÎÏ ÐÒÏÄÏÌÖÉÔØ ÒÁÚÒÁÂÏÔËÕ ÎÏ×ÏÊ ×ÅÒÓÉÉ. ×) ÎÕ É ÞÏ ÔÁÍ ÅÝÅ ÍÏÖÅÔ ÐÏÎÁÄÏÂÉÔØÓÑ :) 2) ÅÓÔØ ÏÄÉÎ ÐÒÏÅËÔ ÎÁ Ä×ÕÈ-ÔÒÅÈ ËÌÉÅÎÔÏ×, ÄÌÑ ËÁÖÄÏÇÏ ËÌÉÅÎÔÁ ÎÁÄÏ ×ÎÏÓÉÔØ ÎÅÚÎÁÞÉÔÅÌØÎÙÅ ÉÚÍÅÎÅÎÉÑ ÉÍÅÎÎÏ ÐÏÄ ÎÅÇÏ. ëÁË ÜÔÏ ÍÏÖÎÏ ÐÒÏËÏÎÔÒÏÌÉÒÏ×ÁÔØ ËÒÏÍÅ ËÁË ÚÁ×ÏÄÉÔØ ÒÁÚÎÙÅ ËÁÔÁÌÏÇÉ Ó ÉÓÈÏÄÎÉËÁÍÉ. 3) ÉÓÈÏÄ ÉÚ ÐÅÒÅÞÉÓÔÅÎÎÏÇÏ ÉÝÅÔÓÑ ÓÏÆÔ, ËÏÔÏÒÙÊ ÍÏÖÅÔ ÐÒÏÓËÁÎÉÒÏ×ÁÔØ ÏÐÒÅÄÅÌÅÎÎÙÊ ËÁÔÁÌÏÇ ×ÍÅÓÔÅ Ó ÐÏÄËÁÔÁÌÏÇÁÍÉ, ÎÁÊÔÉ ×ÓÅ fdb É ÜËÓÐÏÒÔÉÒÏ×ÁÔØ ÉÈ × ÔÅËÓÔÏ×ÙÊ ÓËÒÉÐÔ ×ÍÅÓÔÅ Ó ÄÁÎÎÙÍÉ (ÓËÒÉÐÔ ÒÁÓÐÏÌÏÖÉÔØ ÒÑÄÏÍ Ó fdb ÎÁÚ×Á× ÅÇÏ ÔÁË ÖÅ) "Vladimir A.Bakhvaloff" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED] > "Nikolay Trifonov" <[EMAIL PROTECTED]> wrote in message > news:[EMAIL PROTECTED] >> ÷ÏÔ ÏÄÎÏÇÏ ÎÅ ÐÏÎÉÍÁÀ: ÎÕ ÉÓÐÏÌÄØÚÏ×ÁÔØ cvs ÄÌÑ ÔÅËÓÔÏ×ÙÈ ÄÁÎÎÙÈ pas É >> dfm >> ÎÅÐÌÏÈÁÑ ÉÄÅÑ, ÕÖÅ ÄÁ×ÎÏ ÈÏÞÕ ÎÁ ÎÅÇÏ ÐÅÒÅÊÔÉ ÉÚ-ÚÁ ÖÅÌÁÎÉÑ >> ËÏÎÔÒÏÌÉÒÏ×ÁÔØ >> ×ÅÒÓÉÉ (Ñ ÏÄÉÎ ÒÁÚÒÁÂÏÔÞÉË É ÅÇÏ ÆÕÎËÃÉÉ ËÏÍÁÎÄÙ ÍÎÅ ÎÅ ÎÕÖÎÙ), ÎÏ ÞÔÏ >> ÄÅÌÁÔØ Ó fdb ÆÁÊÌÁÍÉ, ÅÓÌÉ Ñ × ÎÉÈ ÍÅÎÑÀ ÔÅËÓÔÙ ÐÒÏÃÅÄÕÒ ÉÌÉ ÓÔÒÕËÔÕÒÕ >> ÔÁÂÌÉÃ? > >äÙË, IBECompare ÔÅÂÅ × ÒÕËÉ!.. :) >ó ÄÒÕÇÏÊ ÓÔÏÒÏÎÙ, × IBExpert'Å ÅÓÔØ ×ÏÚÍÏÖÎÏÓÔØ ×ÅÓÔÉ ÌÏÇÉ ÉÚÍÅÎÅÎÉÊ... > > -- > [http://bakh.spb.ru] [email:bob#bakh.spb.ru] [icq:1608235]
Re: [Semi-OFF] CVS NT Delphi 3
"Nikolay Trifonov" wrote in message news:[EMAIL PROTECTED] > Вот одного не понимаю: ну исполдьзовать cvs для текстовых данных pas и dfm > неплохая идея, уже давно хочу на него перейти из-за желания контролировать > версии (я один разработчик и его функции команды мне не нужны), но что > делать с fdb файлами, если я в них меняю тексты процедур или структуру > таблиц? Дык, IBECompare тебе в руки!.. :) С другой стороны, в IBExpert'е есть возможность вести логи изменений... -- [http://bakh.spb.ru] [email:bob#bakh.spb.ru] [icq:1608235]
Re: [Semi-OFF] CVS NT Delphi 3
Вот одного не понимаю: ну исполдьзовать cvs для текстовых данных pas и dfm неплохая идея, уже давно хочу на него перейти из-за желания контролировать версии (я один разработчик и его функции команды мне не нужны), но что делать с fdb файлами, если я в них меняю тексты процедур или структуру таблиц? "Vladimir A.Bakhvaloff" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED] > Всем два раза КУ! %) > > Надоело заниматься архивацией сорцов... > Кто-нибудь может поповетовать что-то по поводу сабжа?.. > Особенно волнует проблема вливания/выливания DFM... Т.е. аутоматычная > конвертация их при заливке в text и в binary при получении оттедова... > Ну или ещё какие альтернативы CVS... > Только не SVN, плиз... Как-то он мне не приглянулся... %))) > Заранее спасибо!.. > > -- > [http://bakh.spb.ru] [email:bob#bakh.spb.ru] [icq:1608235] > > >
Re: [Semi-OFF] CVS NT Delphi 3
"Roman V. Babenko aka romb" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED] ты определись что тебе надо, CVS или VCS. Определяюсь ещё раз: а. я работаю либо дома, либо в конторе... б. я хочу "залить" только изменённое (я не всегда могу отследить конкретные файлы, т.к. там дурацкое наследование и иже с ним)... в. я хочу иметь историю изменений, дабы смочь откатиться... г. Ы?.. ;) -- [http://bakh.spb.ru] [email:bob#bakh.spb.ru] [icq:1608235] --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: [Semi-OFF] CVS NT Delphi 3
Nikolay Ponomarenko wrote: > А разве cvs(Concurrent Versions System) не экземпляр семейства vcs(version > control system)? > Другое дело что в JEDI VCS нету вот этого самого concurrent, чего иногда > хочется :) > Не не экземпляр. Он работает по другому. Все VCS блокировщики, CVS никого не блокирует. --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: [Semi-OFF] CVS NT Delphi 3
Hello, Roman! You wrote on Fri, 21 Jul 2006 14:09:13 +0300: ??>>> Рекомендую, для описанных задач, JEDI VCS. ??>> Во!.. Вот это мне ндравится!.. Пошёл пробовать... 10х!.. :))) RVB> ты определись что тебе надо, CVS или VCS. А разве cvs(Concurrent Versions System) не экземпляр семейства vcs(version control system)? Другое дело что в JEDI VCS нету вот этого самого concurrent, чего иногда хочется :) -- -=В то время, когда отечественные космические корабли бороздят просторы Тихого океана...=- With best regards, Nikolay Ponomarenko --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: [Semi-OFF] CVS NT Delphi 3
Vladimir A.Bakhvaloff wrote: > "Nikolay Ponomarenko" <[EMAIL PROTECTED]> wrote in message news:[EMAIL > PROTECTED] >> Рекомендую, для описанных задач, JEDI VCS. > Во!.. Вот это мне ндравится!.. Пошёл пробовать... 10х!.. :))) > ты определись что тебе надо, CVS или VCS. --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: [Semi-OFF] CVS NT Delphi 3
"Nikolay Ponomarenko" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED] > VA> Надоело заниматься архивацией сорцов... > VA> Кто-нибудь может поповетовать что-то по поводу сабжа?.. > VA> Особенно волнует проблема вливания/выливания DFM... Т.е. аутоматычная > Рекомендую, для описанных задач, JEDI VCS. > Очень удобная штука, и изначально заточена на Delphi. > Да, и базу свою умеет хранить в FB : Во!.. Вот это мне ндравится!.. Пошёл пробовать... 10х!.. :))) -- [http://bakh.spb.ru] [email:bob#bakh.spb.ru] [icq:1608235] --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---
Re: [Semi-OFF] CVS NT Delphi 3
Hello, Vladimir! You wrote on Thu, 20 Jul 2006 19:08:17 +0400: VA> Надоело заниматься архивацией сорцов... VA> Кто-нибудь может поповетовать что-то по поводу сабжа?.. VA> Особенно волнует проблема вливания/выливания DFM... Т.е. аутоматычная Рекомендую, для описанных задач, JEDI VCS. Очень удобная штука, и изначально заточена на Delphi. Да, и базу свою умеет хранить в FB : Additional features: ... Convert Delphi form (.dfm) files from binary to plain text format and vise versa. ... -- -=Ты, работа, нас не бойся, мы тебя не тронем.=- With best regards, Nikolay Ponomarenko --~--~-~--~~~---~--~~ -~--~~~~--~~--~--~---