|
|
  |
как воткнуть дату билда в бинарник ? |
|
|
|
Jul 22 2015, 06:48
|
Гуру
     
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143

|
Цитата(jcxz @ Jul 22 2015, 07:11)  При очередной сборке забудете этот дефайн с ревизией поменять. Мы написали скрипт, запускаемый в Prebuild, который получает с SVN-а ревизию и пишет её в хидер (в виде дефайна) подключаемый к проекту (с пересборкой всего проекта при его обновлении). Сколь разговоров развели по такому случаю, если не секрет, для чего вы используете все эти ревизии?? Лично мне они нужны для того, чтоб клиенты не подсовывали всякую муру, несовместимые или очень устаревшие версии в качестве "обновления прошивок", либы пишу стандартные и универсальные, т.ч. при обнаружении глюка в либе ребилдю все проекты, которые ее используют, т.е. почти все  . После этого рассылаю обновления тем, кому этот глюк так сильно донимает. За 2 года было таких случая 4 макс.
Сообщение отредактировал mantech - Jul 22 2015, 06:52
|
|
|
|
|
Jul 22 2015, 07:15
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Цитата(mantech @ Jul 22 2015, 12:48)  После этого рассылаю обновления тем, кому этот глюк так сильно донимает. За 2 года было таких случая 4 макс. Вы видно сами это всё делаете - и компилите и сопровождаете и всё контролируете  А когда производством и настройкой занимается одно подразделение, сопровождением и обновлением у заказчика - другие (и третьи) и при этом у нас, в разработке, ещё и версии периодически новые выходят, и в разработке ПО у нас не один человек участвует, а группа. А есть ещё объекты с опытной эксплуатацией, куда спец. версии компилятся, да когда ещё у устройства есть несколько исполнений с общим ПО (или линейка подобных друг другу устройств с небольшими отличиями в ПО).... Вот тогда, иногда, в этом бардаке вдруг на объекте ответственного Заказчика возникает версия, которой там в принципе быть не должно (которая была скомпилена кем-то (даже не разработчиком, который в это время был в отпуске), по личной просьбе в качестве исключения для кого-то, чтобы что-то испытать или проверить). Вот тогда, без этой сигнатуры, даже концов не найти что это за образ такой прошивки и откуда он взялся? Все открещиваются, что это не они компилили и не они отправили эту версию, в которой даже протокол обмена может быть совсем другой, этому заказчику и порушили ему всю систему. А так - все ходы записаны в образе самой прошивки  И 4 случая таких сбоев за 2 года - это ОЧЕНЬ много для нас. Неприемлемо много.
|
|
|
|
|
Jul 22 2015, 08:18
|
Гуру
     
Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454

|
у меня тоже все просто, версия железа должна быть поддержана компьютером, появляется новый функционал. Потому при старте компьютер запрашивает номер с чем он собственно работает, в номер у нас входит даже ревизия платы.
К каждой версии заполняется табличка с изменениями, и выкладывается поправленное РЭ. Номер версии очень нужен, и не просто номер версии, но еще и привязанный к системе контроля, по 2 причинам. 1 Всегда можно откатить до заданной ревизии и поглядеть как проявляется ошибка, и убедиться что она исправлена в новых версиях. 2 Нет возможности сделать новую прошивку со старым номером версии, в релизе такое - просто саботаж! Ну и 2.1 так скажем, - удобство. У меня в ПЛИС версию руками править приходиться, потому что ISE не умеет скрипты запускать до синтеза, ну во всяком случае я не смог научить, и признаться донимает после синтеза заметить что забыл обновить это поле...
|
|
|
|
|
Jul 22 2015, 10:41
|
Гуру
     
Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454

|
Цитата А я просто держу архивы последних версий, места они занимают немного да и в качестве резерва тоже хорошо Попробуйте меркуриал hg с клиентом черепахой, просто чтобы стать лучше Несколько лет назад я тоже держал архивы по датам, я вам честно скажу - прошлый век. Перед попыткой вноса изменений, сохранить архив, внести изменения, чтобы откатить рыться в файлах и руками их менять, а если версии проекта под разные платформы? Система контроля версий - однозначное добро! Просто попробуйте. Цитата дата хороша тем, что можно смутно вспомнить, перед/после которой пьянкой собиралось, а номер неассоциативен А мы в один день 3 релиза выпустили....
|
|
|
|
|
Jul 22 2015, 10:48
|
Гуру
     
Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136

|
Цитата(Golikov A. @ Jul 22 2015, 13:41)  Несколько лет назад я тоже держал архивы по датам, я вам честно скажу - прошлый век. Перед попыткой вноса изменений, сохранить архив, внести изменения, чтобы откатить рыться в файлах и руками их менять, а если версии проекта под разные платформы? Система контроля версий - однозначное добро! Просто попробуйте. Люто плюсую. Всё, что связано с версиями, автоматизировано, то есть уменьшен риск ошибок, связанных с ручными операциями. Есть простой процесс (зафиксировать изменения с пояснениями), который дисциплинирует. Есть стандартные средства резервного копирования. Только я советую SVN (под виндой TortoiseSVN, конечно). Он концептуально проще, и там всё есть. Ну и есть интересные (для меня, по крайней мере) особенности, например, можно в едином хранилище хранить множество проектов.
|
|
|
|
|
Jul 22 2015, 11:00
|
Гуру
     
Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588

|
не верю (с) был у меня случай с яндекс-диском каким-то облаком всё супер, всё синхронизируется, всё точно, как в аптеке и вот приспичило мне как-то откатить операционку на предыдущую точку восстановления ну и эта...внезапно вдруг пришел пушной зверёк одному полностью собранному и отлаженному проекту эта дура почему-то решила, что файлы проекта на моём диске старее, чем в облаке и переписала практически по состоянию на начало неделя работы псу под хвост не так, чтобы это было что-то важное, типо какая-то утилитка, но было сделано всё настолько красиво, что сил начать с нуля у меня уже не было - так и забил Цитата(Golikov A. @ Jul 22 2015, 10:41)  А мы в один день 3 релиза выпустили.... для супершустрых там ещё время есть - можно каждую секунду релизы выпускать
|
|
|
|
|
Jul 22 2015, 14:55
|
Гуру
     
Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454

|
Ну да, GIT к примеру распределенную систему делает, у меня копия всех проектов на диске, и на сервере копия, главное в системе что версии синхронизированы, и изменения описаны.
Если работаешь один это просто удобно, но если над проектом работает команда, и все могут менять его части, то контроль версий просто необходим.
Да и глупо это обсуждать, была бы ненужная вещь не сидела бы столько людей на ней, и не было бы столько вариантов
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|