Я обсуждаю проект, в котором будет предоставлен интерфейс для ввода данных командой. Мы надеялись сохранить эти данные в репозиторий GIT, чтобы можно было легко просмотреть, какие изменения были внесены в данные.

Можно ли сделать коммит с кодом APEX? Может быть, комбинация с Ant? Кому-нибудь приходилось делать что-то подобное в отделе продаж?

0
Arthlete 28 Янв 2019 в 21:58

1 ответ

Лучший ответ

Apex не может обращаться к Git напрямую. Вам нужно будет обратиться к серверу с подробностями и заставить этот сервер выполнить фиксацию (и, предположительно, отправку) в ваш репозиторий Git.

Частью архитектуры Git является то, что все клиенты/все репозитории равны — «главный» репозиторий назначается по соглашению, а не по замыслу. Это означает, что реализации Git должны реализовывать большую часть или весь Git, чтобы быть функциональными. Apex не предоставляет большого количества того, что было бы необходимо для фактической реализации Git, например, файловой системы и сложных алгоритмов сравнения.

В альтернативном дизайне будет внешний системный вызов Salesforce для получения данных, которые вы сохранили в пользовательском объекте, и проверка этих данных в репозитории, при необходимости после их преобразования. Вероятно, это будет проще реализовать; вы можете встроить его в конвейер непрерывной интеграции любого крупного хостинг-провайдера Git.

1
David Reed 28 Янв 2019 в 22:04