Pergunta

We are working a project jointly with another consulting firm. For the most part we each have our own domains, but there is a little crossover.

Let's say we both modify an entity that has conflicting changes. Using the "last one in wins" rule, whichever solution is imported last will have its change implemented.

Is there a tool or some known methodology for identifying these conflicts before the import is done to help us manage this problem?

Foi útil?

Solução

I have run into this numerous times and my approach has been to export the customizations and inspect the contents of the customizations files (xml files) with a code comparison tool like, WinDiff or BeyondCompare.

Outras dicas

It's not strictly a "last one wins" scenario, there is a model to allow some coexistence, eg if you both add fields to the same form.

One thing to bear in mind is that you should both be doing all your customisations in an unmanaged solution linked to a unique publisher and that publisher should have a unique prefix, so you might use John_ for the prefix for all new entities, fields etc, and the other firm might use Acme_ or whatever suits them.

This helps to reduce direct conflicts such as both adding a field with the same name but different types (they won't have the same schema name, because of the different prefices)

Keep your form components in separate tabs and sections, if you both use managed solutions the form customisations will be merged. Similarly SiteMap & Ribbon customisations can both be developed independently if you keep your changes grouped together you can let CRM merge the solutions for you.

Do not import the other consultancies main customisations solutions into your development environment to avoid creating cross-dependancies between them, you may reference the same entities however. If some entities needed by both consultancies are custom, you will need to agree on what should be included in a "core" solution upfront; develop, share and install it on all development environments as a pre-requisite.

Depending on the projects complexity, you may find that hosting an IFD staging environment with a shared solution which both companies can use to resolve conflicts and to serve as a testing environment useful.

Agree upfront how complaints & UAT issues should be reported, investigated & resolved and clearly define the division of work upfront.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top