Исходный контроль для MS Dynamics CRM - PullRequest
9 голосов
/ 08 июня 2011

Я сейчас не определился с CRM.Это отличный инструмент для бизнес-пользователей, но пока что для развития он был немного против зерна.Следующая проблема, которую мне нужно решить, - это как легко управлять исходным кодом javascript, используемым в формах.Мы используем TFS для управления исходным кодом.

Кто-нибудь имел опыт или какие-либо идеи о том, как это сделать?

Очевидным выбором будет копирование и вставка JS в ваш контроль исходного кода,но это также очевидная боль в тылу.

Ответы [ 6 ]

15 голосов
/ 08 июня 2011

Пара вещей, которые мы делаем в наших проектах:

  1. Мы используем Утилиту веб-ресурсов, входящую в комплект CRM SDK (фактически ее модифицированную версию), для развертывания веб-ресурсов JavaScript в конкретном решении. Упрощает сохранение файлов сценариев в системе контроля версий как обычно и позволяет избежать копирования и вставки.
  2. Мы написали собственный модуль HTTP, который мы используем при локальном развертывании. Он перехватывает запросы к библиотекам JavaScript и перенаправляет их в местоположение на локальном диске. Таким образом, нам не нужно заново развертывать веб-ресурсы во время тестирования, только файлы JavaScript на диск. (Обратите внимание, что это не поддерживается в производственной среде. Мы просто делаем это в наших средах разработки, чтобы облегчить задачу развертывания JavaScript).
2 голосов
/ 08 июня 2011

Я ответил на очень похожий вопрос здесь - Контроль версий для проектов Visual Studio и MS Dynamics CRM (javascript)

Мой выбор для управления исходным кодом - TFS, содержащая каждую из библиотек JScript 2011 года.

1 голос
/ 16 апреля 2013

Вы можете посмотреть мой ответ на мой собственный вопрос здесь .

MS Dynamics CRM 2011 SDK имеет утилиту solutionpackager.exe, которая может разбить все ресурсы CRM на дерево файлов, и выможет хранить их либо в git, либо в tfs.

1 голос
/ 25 ноября 2011

Мы пытаемся отразить файловую структуру, которую Dynamics использует для веб-ресурсов в базовом проекте библиотеки.Таким образом, контроль версий работает как обычно, мы просто не используем выходные данные проекта.

Вы также можете попробовать использовать новый шаблон проекта "CRM Solution" (установлен из SDK) и иметь возможность развертыванияиз контекстного меню проекта.

У меня были некоторые проблемы с шаблоном, но кое-что нужно проверить.

Надеюсь, это поможет.

0 голосов
/ 17 июня 2011
  1. Об этом следует беспокоиться, только если вам действительно нужна возможность вернуться к старым версиям веб-ресурсов.Я обнаружил, что мне не часто приходится это делать.Помните, что веб-ресурсы хранятся в SQL Server точно так же, как если бы вы помещали их в TFS, поэтому до тех пор, пока выполняется резервное копирование базы данных CRM, вы не потеряете веб-ресурсы.В традиционной разработке важно сохранять исходный код в TFS, потому что вы не можете легко вернуться к нему после компиляции и выпуска.При разработке CRM ваши веб-ресурсы в основном HTML или JavaScript, поэтому вы всегда можете получить доступ к источнику.

  2. Если вам действительно нужен контроль версий, почему бы не создать небольшое небольшое консольное приложение, котороекаждый вечер загружает все настройки и сохраняет этот zip-файл в TFS?Правда, было бы нелегко получить доступ к старым версиям, но вы должны получить большую производительность, не поддерживая синхронизацию TFS вручную.Это также имеет преимущество хранения всех настроек в TFS, а не только веб-ресурсов.

  3. Silverlight - очевидное исключение здесь - я бы определенно сохранил исходный код веб-ресурса Silverlight в TFS, потому что онэто «скомпилированный» веб-ресурс.Вы уже находитесь в Visual Studio, поэтому TFS в любом случае является естественным.

Надеюсь, это поможет!

0 голосов
/ 09 июня 2011

Любой веб-ресурс в CRM 2011 - это боль в управлении.Мы только что закончили делать копирование в TFS 2010 и из него (что на самом деле вызвало некоторые проблемы с плохими вставками).

На данный момент нет простого способа сделать это.

...