Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.09.19;
Скачать: CL | DM;

Вниз

Как получить доступ к SVN-ревизии .DFM в run-time ?   Найти похожие ветки 

 
laao   (2010-06-21 17:12) [0]

Добрый день

Задача - иметь номер ревизии Subversion в run-time Delphi проекта (для отображения пользователю, записи логов и так далее). SVN проставляет ревизию в любом текстовом файле при его изменении, в том месте, где указана служебная метка $Rev $. В нашем случае интересны .PAS и .DFM. Получение номера ревизии для .PAS файла решается добавлением блока инициализации

Foo.UpdateRevision("$Rev: $");

В этом случае при любом измении .PAS файла и commit"е его в репозиторий SVN собранный после этого проект будет оперировать в run-time актуальной ревизией.

Есть ли у кого-то идеи, как добиться того же эффекта для .DFM ? Добавить константу с $Rev $ в каждый файл несложно, можно для всех форм зарегистрировать компонент-предок с property Revision: TCaption ... Но как его получать потом? На момент старта проекта ведь не все формы еще создаются ...

Приветствуются любые идеи


 
_Юрий ©   (2010-06-21 19:04) [1]

ТО есть может такое быть, что у pas ревизия другая, чем у соответствующего ему DFM ?
ИМХО, это неверно


 
Игорь Шевченко ©   (2010-06-21 22:27) [2]

_Юрий ©   (21.06.10 19:04) [1]


> ИМХО, это неверно


Вроде ничего неверного. pas может обновляться чаще, чем dfm

laao   (21.06.10 17:12)  


> Приветствуются любые идеи


> Но как его получать потом?


Например, из ресурсов, как собственно, загружается dfm при создании.


 
jack128_   (2010-06-21 22:40) [3]

а можно узнать - зачем вообще в dfm"ках нужен номер ревизии?


 
laao   (2010-06-22 12:14) [4]

Да, таки из ресурсов нужно вытаскивать .DFM в run-time. Сейчас эксперементирую в этом направлении


> jack128_   (21.06.10 22:40) [3]
> а можно узнать - зачем вообще в dfm"ках нужен номер ревизии?
>


Ну, например, открыл я готовый проект, удалил в дизайнере у какой-то кнопки обработчик на Click. Или, другой пример, для датасета изменил свойство SQL. В .PAS файле при этом ничего не поменяется :)


 
laao   (2010-06-22 12:24) [5]


> ТО есть может такое быть, что у pas ревизия другая, чем
> у соответствующего ему DFM ?ИМХО, это неверно


Subversion (SVN) проставляет новую ревизию только в тех файлах, которые менялись. Так как существует множество случаев, когда меняется либо только .PAS, либо только .DFM, то да, ревизии будут разными (а нас интересует максимальная из всех файлов проекта)


 
jack128_   (2010-06-22 19:35) [6]

так в рабочей копии же есть инфа о номере ревизии, нафиг она в самих сорцах?


 
[true]TRIx ©   (2010-06-24 00:48) [7]

Tortose SVM скачай. ставишь, затем в проводнике правой кнопкой мыши клацаешь на любую папку куда заливать и вбиваешь ссылку.



Страницы: 1 вся ветка

Текущий архив: 2010.09.19;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.011 c
15-1277105792
12
2010-06-21 11:36
2010.09.19
Идея такая. Пусть пользователь сам себе рисует форму..


2-1277246482
Отшельник
2010-06-23 02:41
2010.09.19
Как узнать, подключена ли другая программа к серверу?


3-1245398109
Patrick
2009-06-19 11:55
2010.09.19
Группировка данных при использовании ExpressQuantumGrid


15-1276780683
shaman
2010-06-17 17:18
2010.09.19
объектно-ориентированное програмирование


15-1277125976
laao
2010-06-21 17:12
2010.09.19
Как получить доступ к SVN-ревизии .DFM в run-time ?