Имя: Пароль:
1C
1С v8
Git и удаленные объекты метаданных - как организовать?
,
0 nicxxx
 
10.08.17
18:22
Всем привет, коллеги.
Кто использует Git или любую другую CVS, подскажите, как поступаете с удаленными объектами метаданных? Т.е. удаляете ли физически их из конфигурации и как потом отражаете это в git-e? Или же нельзя их удалять, а нужно переименовывать, как это делают в типовых?
1 Tateossian
 
10.08.17
18:26
(0) А ты кофнигурацию как в Gite хранишь - как configuration.xml?
2 nicxxx
 
10.08.17
18:48
разбираю через v83unpack. у меня еще 8.2 в ходу.
3 Tateossian
 
10.08.17
19:23
(2) Уж лучше используй встроенный репозиторий. Но в твоем случае можешь хранить в бинарном виде))

А для нормальной работы с системами версионирования есть обычная выгрузка в файлы. Там есть такой - configaration.xml В нем структура описана.
4 Fragster
 
гуру
10.08.17
19:32
1с в гите не использую, а вот во всяких js удаляю нафиг. Да и в случае с 1с - переименование - это необходимость для выполнения миграции, т.е. в одном релизе переименовываем и переносим данные, в следующем - удаляем.
В мире js, php и прочего изменение схемы данных производится несколько другими средствами.
5 Злопчинский
 
10.08.17
20:10
(4)  а как в ином мире ? Интересно
6 Fragster
 
гуру
10.08.17
20:53
(5) 1с сильно облегчает жизнь. http://docs.sequelizejs.com/manual/tutorial/migrations.html
7 rudnitskij
 
10.08.17
22:56
а хранилище конфигурации чем вас не устраивает?
8 JeyRico
 
11.08.17
01:14
(7) Я просто оставлю это здесь https://git-scm.com/book/ru/v1
9 ИмяФамилия
 
11.08.17
07:20
(5) в ином мире изменение схем данных происходит в несколько этапов:
1. проектируем-придумываем изменения к текущему.
2. добавляем новое.
3. учим приложение писать и в новое и в старое.
4. мигрируем старое в новое.
5. отключаем чтение из старого.
6. отключаем запись в старое.
7. удаляем старое. обычно - через зануление и потом дроп.

и никаких альтеров. только добавляем-удаляем)
и всё это под нагрузкой 24/7
10 rudnitskij
 
11.08.17
09:46
(8) что из этого нельзя делать в хранилище? Версии там хранятся вроде бы...
11 MM
 
11.08.17
09:59
(10) Подскажете как в хранилище делать несколько веток? Минимум рабочая и тестовая, и под отдельные проекты ветки удобны.
Как в хранилище работать с одним объектом двум разработчикам одновременно? Понятно, что это решается организационно, но не всегда.
Как в хранилище работать в автономном режиме, пока связь с ним временно не доступна? Если объекты не были захвачены, пока связь была.
12 Вафель
 
11.08.17
10:01
Если ты пишешь самописку, то смело можно удалять (кстати удалить в гите не проблема)
13 Вафель
 
11.08.17
10:01
В типовых не удаляют, потому что неизвестно когда все перейдут на новую версию
14 ИмяФамилия
 
11.08.17
10:33
(10) как посмотреть отличия объектов по ревизии из хранилища?
сколько на это надо времени? конфига например УПП или ЕРП?
доступ из веб-а? без наличия 1с на компе.
и как следствие: как перекинуть ссылку на косяк в ревизии другому разработчику?
15 rudnitskij
 
11.08.17
10:39
(14) "доступ из веб-а? без наличия 1с на компе. "
И зачем вам файл конфигурации без наличия 1С на компе?
16 rudnitskij
 
11.08.17
10:40
(11) "Как в хранилище работать с одним объектом двум разработчикам одновременно? "
При захвате чего-то в хранилище можно разрешать получать захваченные
17 rudnitskij
 
11.08.17
10:41
(11) "Как в хранилище работать в автономном режиме, пока связь с ним временно не доступна? Если объекты не были захвачены, пока связь была."
а с гитом по вашему можно работать без связи с ним?
18 rudnitskij
 
11.08.17
10:43
(11) "...и под отдельные проекты ветки удобны."
Под разные проекты разные хранилища - вариант совсем неприемлемый? Я вот не вижу удобств от собирания в один гит кучи проектов. А возможностей напутать что-то у разработчиков появляется много
19 ИмяФамилия
 
11.08.17
10:45
(15)
мне не нужен файл конфигурации.
мне нужно отсмотреть изменения которые внесены в хранилище.

мне необходимо указывать на косяки в коде. ссылкой на репозиторий-ревизия-файл-строчка изменений.
как это можно организовать в штатном хранилище?
20 ИмяФамилия
 
11.08.17
10:46
(17) гит можно держать локально. при появлении связи с миром - получать-отправлять изменения. разруливать конфликты при необходимости.
21 MM
 
11.08.17
10:50
(16) А вы знаете, что при этом будет? Просто, то что тобой сделано в БД будет затёрто содержимым хранилища.
(17) Естественно, потом нужно будет провести слияние с центральным репозиторием. Git для разработки Linux используют, представляете сколько там разработчиков, которые и автономно работают.
(18) Зато официальная рекомендация 1С под релиз отдельное хранилище, под разработку другое. А как переносить догадываетесь?
Разумеется, я имею ввиду схожие проекты.
22 nicxxx
 
11.08.17
10:59
(8) Дело не документации по гиту, а в поведении 1С.
Кстати вопрос снимается, я тут проверил, удаленные метаданные удаляются из каталога распаковки.
23 MM
 
11.08.17
11:00
(20) Вот только у 1С есть и двоичные объект, например, моксели, тут гит не спасёт в разруливании конфликтов.

(18) Если разные проекты отличаются в мелочах, а основной функционал разрабатывается в главной ветке, то почти все разработчики работают с главным набором ветвей, а с ветками клиентов сравнение производится ответственным за проект в одно лицо. Ветки проектов можно даже держать в отдельных репозиториях (недоступных рядовым разработчикам; находятся у клиентов), которые получают обновления релизной ветви из центрального хранилища.
24 ИмяФамилия
 
11.08.17
11:30
(23) насколько я понимаю, платформа активно идёт в направлении "взрослой" разработки и сейчас бинарных объектов выгружает всё меньше и меньше. и всё больше десериализованных в xml данных.
а уж шаги в направлении возможности загружать конфигу по частям (файлам) из командной строчки и вовсе рывок)