Коллеги за обедом разговорилиь как работает Team Foundation Server \ visual studio для командной разработки проектов. Локальные репозитарии, стабильные версии...
Возник вопрос: а как происходит груповая разработка проектов в SFDC? Есть ли какой-то функцонал, который сохранет предыдущие версии классов на сервере? Как синхронизировать изменения с коллегами?
Для парвллельной разработки на проекте в принципе можно адаптировать любую существующую систему контроля версий: Git, SVN, CVS и прочие.
Единственное что SF накладывает свои ограничения так как код сохраняется непосредственно на SF сервер, но все решаемо прописанием четких правил для работы с ситемой контроля версий которые должны соблюдаться всегда и ВСЕМИ кто работает на проекте.
Из опыта могу сказать что использование такого рода систем не только желательно но и обязательно .
P.S. кстати один из вопросов в DEV 401 или DEV 501 так и звучит: как организовать командную работу на проекте и один из правильных ответов - ипользование систем контроля версий, второй ответ - организовать систему dev сандбоксов для каждого разработчика (придется мерджить если работа проходит над одним и тем же классвом).
Лучше конечно почитать специализированные источники благо их много даже на русском, но в двух словах это система которая хранит истроию изменения вашего кода и в любой момент вы можете вернуться а какой-то версии или посмотреть кто, когда и как изменял какойто класс например.
Что физически представляет эта система: это плагин в твоем эклипсе, который обращается к какому-то серверу, где команда разработчиков и хранит все версии кода?
Лучше конечно почитать специализированные источники благо их много даже на русском, но в двух словах это система которая хранит истроию изменения вашего кода и в любой момент вы можете вернуться а какой-то версии или посмотреть кто, когда и как изменял какойто класс например.
Что физически представляет эта система: это плагин в твоем эклипсе, который обращается к какому-то серверу, где команда разработчиков и хранит все версии кода?
Нет немного не так ) Физически это обособленаая система котрая умеет делать какие-то операции с файлами и ей все равно как ты организуешь с ней работу через плагин или как в случае с Git через консоль или через сторонние какие-то программы, это уже кому как нравится
Система контроля версий - офигенная штука. И если у вас проект чуть больше домашней странички про хобби, то просто must have так сказать.
Более того, не обязательно для командной работы! ДЛЯ СЕБЯ тоже очень полезно сохранять проект в систему контроля версий, чтобы контролировать все изменения в коде и восстановить затертый (удаленный) кусок кода.
В случае локального проекта (самый простой вариант): поставить git на локальном компе, в Eclipse подключить плагин EGit, в проекте создать локальный репозиторий (просто в парке проекта появится дополнительная папка .git) и периодически делать commit. Для удобной работы с git могу посоветовать TirtioseGit. После этого можно спать спокойно.
Для более сложных случаем лучше изучить git более подробно.
Если хочешь сохранять проект в инете, то пользуйся bitbucket.com Они предлагает закрытых 5 репозиториев бесплатно. Очень удобно шарить проект между несколькими компами, не совсем актуально для Salesforce из-за его особенностей хранения кода непосредственно на сервере, но для других языков просто незаменимый инструмент.
P.S. кстати один из вопросов в DEV 401 или DEV 501 так и звучит: как организовать командную работу на проекте и один из правильных ответов - ипользование систем контроля версий, второй ответ - организовать систему dev сандбоксов для каждого разработчика (придется мерджить если работа проходит над одним и тем же классвом).
И какой вариант правильный для ответа на сертификации?
Спасибо, очень хорошое видео, и там у автора еще есть интересные ролики.
Я вижу, что знание и умение пользоваться системой контроля версий - это важная часть работы\проф навыков любого програмиста. Буду по-тихоньку пробовать. Спасибо
Спасибо, очень хорошое видео, и там у автора еще есть интересные ролики.
Я вижу, что знание и умение пользоваться системой контроля версий - это важная часть работы\проф навыков любого програмиста. Буду по-тихоньку пробовать. Спасибо
Я так и думал что остальные ролики тоже тебя заинтересуют. ;)
Спасибо, очень хорошое видео, и там у автора еще есть интересные ролики.
Я вижу, что знание и умение пользоваться системой контроля версий - это важная часть работы\проф навыков любого програмиста. Буду по-тихоньку пробовать. Спасибо
Я так и думал что остальные ролики тоже тебя заинтересуют. ;)
Спасибо! действительно - хочу все знать, но время не хватает. ведь наша работа - это работа головой. а голова работает (держит концентрацию внимания) не целый день, а только пока свежая.