| 
    
        
     
     | 
    
  | 
Поделитесь опытом УДОБНОЙ работы в хранилище, когда есть т.н. черновик и чистовик | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        NV_corp    
     23.02.24 
            ✎
    07:37 
 | 
         
        (dev и release)
 
        Интересует особенность работы с непротестированными доработками, когда работа закончена, в хранилище выгружено, но тестирование тестировщиками/пользователями не выполнялось, а рабочую базу обновлять из хранилища уже нужно.  | 
|||
| 
    1
    
        Обработка    
     23.02.24 
            ✎
    08:07 
 | 
         
        (0) Пока тестирование не прошло не обновлять.
 
        Как вариант временно выключить не проверенные модули потом обновить и опять включить свой модуль продолжить тестировать.  | 
|||
| 
    2
    
        Обработка    
     23.02.24 
            ✎
    08:08 
 | 
         
        Могу конечно ошибиться но так есть..     
         | 
|||
| 
    3
    
        Волшебник    
     23.02.24 
            ✎
    08:08 
 | 
         
        (0) Обновляйте помолясь...     
         | 
|||
| 
    4
    
        Dmitry1c    
     23.02.24 
            ✎
    08:33 
 | 
         
        (0) а что тут собсна обсуждать?
 
        обновляете базу release из dev, загоняете туда тестировщиков. исправляете ошибки в обеих базах. исправили ошибки - обновляете прод. что тут еще придумать можно?  | 
|||
| 
    5
    
        Asmody    
     23.02.24 
            ✎
    10:32 
 | 
         
        (0) слова надо особые знать! Записывай: "Отче наш, иже еси на небеси..."     
         | 
|||
| 
    6
    
        kuromanlich    
     23.02.24 
            ✎
    10:52 
 | 
         
        есть практика, которую SAP у себя зашил в ПО, это когда нельзя провести обновления в реальную базу без предварительного обновления в тестовую базу, после тестирования в которой можно далее проводить обновление в продакшн.
 
        если попробовать реализовать такое, то получается, что для разработчиков имеется хранилище, и ответственный админ/разработчик переносит готовое к тестированию либо в хранилище для тестировщиков, либо в отдельную "царь базу" тестирования, на которой все проводят тестирования (имею ввиду уже не разработчики). тогда ваша работа будет выглядеть так: base_development + repository (development) base_testing + repository (testing) base_poduction  | 
|||
| 
    7
    
        kuromanlich    
     23.02.24 
            ✎
    10:50 
 | 
         
        но это все так, баловство, если посмотреть "правильные выступления" то надо slack, git, vanessa, все это приправлено DevOpsом, который за этим всем следит, то можете почувствовать что выбрали не ту профессию и пора переквалифицироваться в электрика, оператора станка ЧПУ и прочее )     
         | 
|||
| 
    8
    
        NV_corp    
     23.02.24 
            ✎
    11:08 
 | 
         
        (7) Да, потому и задал вопрос об УДОБНОЙ работе с хранилищем, а не разведение бюрократии и введение новых должностей в цепочку ради поддержания цепочки.     
         | 
|||
| 
    9
    
        kuromanlich    
     23.02.24 
            ✎
    11:14 
 | 
         
        (8) то что в (7) это не бессмысленная бюрократия, это правильно, технологически красиво, но объем ваших задач и бюджет на их решение скорей всего не соответствует приведенной схеме работы     
         | 
|||
| 
    10
    
        Garykom    
     23.02.24 
            ✎
    13:45 
 | 
         
        (0) Логично что два хранилища конфигураций завести dev и prod/release
 
        Разработка и первое тестирование в хране dev Затем перенос ручками или через cf в хран release, там окончательное тестирование перед переносом на прод и обновление прода  | 
|||
| 
    11
    
        DmitryZzz    
     23.02.24 
            ✎
    14:12 
 | 
         
        Была практика использования 3-х хранилищ: dec/qa/prod.
 
        Разработчики коммитят в dev, тестируют в своей базе и если все ок, просят администратора перенести изменения только по необходимым объектам в qa. Далее тестируется в qa и если все ок, то также пообъектно переносится в prod.  | 
|||
| 
    12
    
        Garykom    
     23.02.24 
            ✎
    14:15 
 | 
         
        (11) администратора ?
 
        отдельно выделенного прога? а если там для переноса надо много перелопатить для совмещения? ну последовательность задач нарушилась например  | 
|||
| 
    13
    
        DmitryZzz    
     23.02.24 
            ✎
    14:34 
 | 
         
        (12) ну да, администратора, т.к. его время стоит дешевле.
 
        В целом, это пообъектный метод, если же какие-то определенные процедуры/функции, то явно указывается. Необходимый список изменений можно получить, если взять за правило комитить в хранилище с определенным комментарием, например #123. Тогда и все изменения можно выгрузить платформенно. На Infostart`е была даже какая-то подобная конфигурация  | 
|||
| 
    14
    
        Garykom    
     23.02.24 
            ✎
    15:05 
 | 
         
        (13) Эмм.
 
        При большой реальной разработке очень часты ситуации когда задача зависает в тесте не на дни или недели а месяцы. И уже вперед помещаются в прод более поздние задачи, которые в дев сделаны с учетом что там код более старых задач (зависших на тесте) Каким местом можно это легко перенести если процедуры/функции и даже метаданные отличаются. И требуется нехилый уровень чтобы правильно перенести/совместить с переделкой. А потом еще раз когда зависшая задача из теста в прод пойдет. А еще могут напрямую в проде (сервис или сами проектные) править, не помещая свои изменения в дев...  | 
|||
| 
    15
    
        vde69    
     23.02.24 
            ✎
    15:23 
 | 
         
        1. рабочая база НЕ подключена к хранилищу
 
        2. на рабочую базу все обновления всегда накатывает ОДИН человек 3. хранилище общее на всех разрабов, разрабы в хранилище кладут только функционал который сами проверели (тут важно не класть "полуфабрикаты") 4. тестировщик получает из хранилища и тестирует в своей базе, если все устраивает маркирует все изменения в хранилище номером версии и передает ее "накатывателю" 5. "накатыватель" (если принимает решение накатить) на базе тестировщика меняет версию (и версию кладет в общее хранилище) сохраняет cf и ее накатывает на продакт, заодно описывает/закрывает задачи учетной системе  | 
|||
| 
    16
    
        Garykom    
     23.02.24 
            ✎
    16:17 
 | 
         
        (15)  
        3. хранилище общее на всех разрабов, разрабы в хранилище кладут только функционал который сами проверели (тут важно не класть "полуфабрикаты") 
Где хранятся "полуфабрикаты"? Хранить их в базе/базах разрабов это опасно и неудобно, как другим следить за прогрессом и как совместная разработка?  | 
|||
| 
    17
    
        Garykom    
     23.02.24 
            ✎
    16:22 
 | 
         
        (15) То что ты описал это очень небольшая проектная командочка
 
        И маленький проект или уже саппорт, после завершения проекта В реальном проекте когда много разрабов и текучка (она обязательна в больших командах) даже промежуточные "полуфабрикаты" надо куда-то складывать в общее хранилище Обычно переходят с хранов на Гит и туда помещают все что наработано за день в свою ветку задачи И уже когда готово пулл-реквест идет в общую ветку на тест  | 
|||
| 
    18
    
        vde69    
     23.02.24 
            ✎
    23:14 
 | 
         
        (17) гит для 1с ну очень не удобен (хотя я понимаю есть секта свидетелей гит и их разубедить невозможно)
 
        (16) обычно есть некий "архитектор" он накидывает новых объектов уже в привязке к правам и подсистемам, далее разрабы работают с конкретными модулями/формами по поводу "ветка задачи" большинство задач это менее 1 дня, крупные задачи как правило следует дробить на более мелкие. По этому заводить ветку на задачу просто не имеет смысла. Сделал задачу, сам проверил - положил в хранилище. В твоей схеме должен быть отдельный человек который из кучи веток собирает релиз (каждый день), это наверно удобно для конечных разрабов (они не парятся на предмет совместимости доработок) и разумеется это очень удобно когда ты даешь конкретные задачи "на сторону и когда текучка", но когда свой собственный отдел из пяти человек то это абсолютно не удобно, а отдел в 5...10 человек тянут практически любой большой проект.  | 
|||
| 
    19
    
        PR    
     23.02.24 
            ✎
    23:20 
 | 
         
        (18) Гит для 1С да, не очень
 
        Только хардкор, только перфокарты, старая школа  | 
|||
| 
    20
    
        Garykom    
     24.02.24 
            ✎
    00:55 
 | 
         
        (18)  
        крупные задачи как правило следует дробить на более мелкие 
Некоторые задачи невозможно дробить на мелкие Ибо они взаимосвязаны и должен один делать чтобы погрузиться и не мешать друг другу В твоей схеме должен быть отдельный человек который из кучи веток собирает релиз 
Все не так Это надо изучить и попробовать, чтобы понимать как оно работает Не требуется никакой отдельный человек чтобы из веток собирать релиз, точней это любой может в любой момент  | 
|||
| 
    21
    
        Guk    
     24.02.24 
            ✎
    07:24 
 | 
         
        а что, схему "куяк куяк и в продакшн" уже отменили?...     
         | 
|||
| 
    22
    
        systemstopper    
     24.02.24 
            ✎
    07:57 
 | 
         
        (0) погугли технологию разветвлённой разработки, через гноилище     
         | 
|||
| 
    23
    
        systemstopper    
     24.02.24 
            ✎
    07:59 
 | 
         
        +(22) по сути это тот же github flow     
         | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |