Наткнулся на подробный гайд как работать с Salesforce в VS Code. А то раньше меня на какие-то непонятные статейки отправляло из поиска. Вот теперь будет под рукой. https://developer.salesforce.com/tools/vscode
А такой вопрос назрел. Кто-нибудь сталкивался с организацией работы над SF проектом в котором разрабы предпочитают использовать разные IDE? На сегодня два самых популярных это VSCode + Salesforce Extension Pack и IC2. Вот к примеру хотел сегодня попробовать поработать с текущим проектов который изначально пилил под IC2. Под эту структуру собственно заточен git. Ладно, начало не сложное - создал пустой проект в VSCode, скопировал package.xml, выгрузил из орга метадату и вот можно работать. НО что делать с git? Структура проектов разная. Даже если смотреть force-app/main/default из VSCode и src из IC2 есть различию в некоторых внутренних папках (к примеру objects). Вот собственно вопрос как работать через git если один разраб на VSCode а другой на IC2? может какие лайфхаки существуют. Напрашивается какой нибудь скрипт который будет преобразовывать один тип проекта в другой. Типа держишь git папку отдельно от проекта и когда нужно запускаешь скрипт, и он берет твою папку проекта достает оттуда файлы и копирует в нужном порядке в папку гита, а там уже уже отдельно делаешь commits, push, pull. И обратно также. Минус такого подхода не получится использовать внутренние инструменты IDE для работы с git. Лучше конечно если git сразу находится в папке проекта.
[quote="Dmitry Shnyrev"]А такой вопрос назрел. Кто-нибудь сталкивался с организацией работы над SF проектом в котором разрабы предпочитают использовать разные IDE? На сегодня два самых популярных это VSCode + Salesforce Extension Pack и IC2. Вот к примеру хотел сегодня попробовать поработать с текущим проектов который изначально пилил под IC2. Под эту структуру собственно заточен git. Ладно, начало не сложное - создал пустой проект в VSCode, скопировал package.xml, выгрузил из орга метадату и вот можно работать. НО что делать с git? Структура проектов разная. Даже если смотреть force-app/main/default из VSCode и src из IC2 есть различию в некоторых внутренних папках (к примеру objects). Вот собственно вопрос как работать через git если один разраб на VSCode а другой на IC2? может какие лайфхаки существуют. Напрашивается какой нибудь скрипт который будет преобразовывать один тип проекта в другой. Типа держишь git папку отдельно от проекта и когда нужно запускаешь скрипт, и он берет твою папку проекта достает оттуда файлы и копирует в нужном порядке в папку гита, а там уже уже отдельно делаешь commits, push, pull. И обратно также. Минус такого подхода не получится использовать внутренние инструменты IDE для работы с git. Лучше конечно если git сразу находится в папке проекта. [/quote] все просто, надо ваш старый проект перевести в sfdx вместо metadata и будет одинаковая структура и в ic2 и в vs code
[quote="Maxim Elets"]все просто, надо ваш старый проект перевести в sfdx вместо metadata[/quote] Это в IC2 есть такая опция?
[quote="Dmitry Shnyrev"][quote="Maxim Elets"]все просто, надо ваш старый проект перевести в sfdx вместо metadata[/quote] Это в IC2 есть такая опция? [/quote] https://developer.salesforce.com/tools/vscode/en/user-guide/source-format
Статья хорошая, но она про то как конвертнуть старый формат проекта в sfdx и правильно это дело закопитить в гит. Но зачем это если половина команды продолжает работать с IC2 и старым форматом проекта. После очередного pull из гита их IC2 сойдут с ума. Мне скорее интересно можно ли работать не меняя структуру проекта в гит разных командам одновременно. Тут напрашивается вопрос может ли sfdx поддерживать старый формат проекта (насколько я понял нет) и может ли IC2 работать с sfdx форматом проекта? Ну или если ни те ни другие не идут на уступки тогда остается git в старом формате, а пользователям VSCode придется мучаться с преобразованием проекта туда обратно. Главное понять как это правильно делать. Туда sfdx force:mdapi:convert Обратно sfdx force:source:convert В теории это рабочий вариант, но насколько там много мусора будет появляться из за такого двойного конвертирования.
Статья хорошая, но она про то как конвертнуть старый формат проекта в sfdx и правильно это дело закопитить в гит.
Но зачем это если половина команды продолжает работать с IC2 и старым форматом проекта. После очередного pull из гита их IC2 сойдут с ума.
Мне скорее интересно можно ли работать не меняя структуру проекта в гит разных командам одновременно. Тут напрашивается вопрос может ли sfdx поддерживать старый формат проекта (насколько я понял нет) и может ли IC2 работать с sfdx форматом проекта?
Ну или если ни те ни другие не идут на уступки тогда остается git в старом формате, а пользователям VSCode придется мучаться с преобразованием проекта туда обратно. Главное понять как это правильно делать.
Туда
sfdx force:mdapi:convert
Обратно
sfdx force:source:convert
В теории это рабочий вариант, но насколько там много мусора будет появляться из за такого двойного конвертирования.
[quote="Dmitry Shnyrev"]Статья хорошая, но она про то как конвертнуть старый формат проекта в sfdx и правильно это дело закопитить в гит. Но зачем это если половина команды продолжает работать с IC2 и старым форматом проекта. После очередного pull из гита их IC2 сойдут с ума. Мне скорее интересно можно ли работать не меняя структуру проекта в гит разных командам одновременно. Тут напрашивается вопрос может ли sfdx поддерживать старый формат проекта (насколько я понял нет) и может ли IC2 работать с sfdx форматом проекта? Ну или если ни те ни другие не идут на уступки тогда остается git в старом формате, а пользователям VSCode придется мучаться с преобразованием проекта туда обратно. Главное понять как это правильно делать. Туда sfdx force:mdapi:convert Обратно sfdx force:source:convert В теории это рабочий вариант, но насколько там много мусора будет появляться из за такого двойного конвертирования.[/quote]можно ласково попросить перейти на новый формат, ведь по факту ничего глобально не меняется, кроме добавления удобства)
Так я не понял. IC2 может работать с sfdx типом проекта? Ну попросим перейти на новый тип проекта. После преобразований в гит будет лежать sfdx проект. И что дальше? Теперь все кто на IC2 будут конвертить в старый тип проекта, и обратно, а VSCode разрабы нет?
А мля, точно! Вот я туплю. Просто работаю уже год с одним проектом, особо и не копался в IC2. Только что проверил - поддерживается и классический тип проекта и так называемый DX. :rolling: Ну тогда, да самый верный способ это перевести git на sfdx тип проекта и заставить IC2 пользователей перейти на него. И все будут счастливы!