Esto es, como usted dijo, una gran pregunta. Éstos son algunos de mis pensamientos:
El desarrollo de Medio Ambiente
En primer lugar cuando empiezo un nuevo proyecto instalo Sitecore en mi entorno de desarrollo y me aseguro de que todo funciona. Ya sea durante la instalación o después de colocar las bases de datos en un servidor SQL por separado y cambiar la conexión de cable en consecuencia.
Abro Visual Studio y creo una solución e incluyo los archivos necesarios. Creo algún tipo de representación HelloWorld y trato de construir la solución para que pueda verificar que todo está funcionando como debería.
Cuando todo está funcionando, creo un archivo zip de toda la solución, incluida la carpeta de datos. Ahora es el momento de agregar esto a algún tipo de sistema de control de versiones, en mi caso Subversion.
Agrego el archivo zip a la subversión y también agrego todos los archivos que creo que serán cambiados durante el proyecto, generalmente le digo a subversion que ignore la carpeta del sitecore, esto acelera el rendimiento drásticamente al registrar archivos.
después de realizar una acción cometer los otros miembros del equipo de mi proyecto pueden revisar el código y empezar a desarrollar (después de descomprimir el archivo zip, fuera de curso)
Todos trabajamos hacia la misma base de datos, aunque esto va en contra de las recomendaciones de Sitecore, no hemos tenido ningún problema con este enfoque, sin embargo, los elementos en GUI creados/modificados por un desarrollador tardan un poco antes de que se creen/cambien para todos los demás.
Podríamos desarrollar varios proyectos diferentes utilizando la misma instalación de Sitecore, pero como casi todos los clientes usan diferentes versiones de Sitecore, encontramos que este enfoque es un poco engorroso.
A menudo configuramos un servidor de compilación automatizado, pero este es otro problema.
código reutilizable y representaciones
me gustaría decir que creamos paquetes ordenados en base a la misma base de código que se reutilizan entre proyectos, pero por desgracia no estamos allí todavía. Hoy en día es mucho cortar y pegar entre soluciones.
código de Carga en cliente
Esto se realiza mediante paquetes de Sitecore, normalmente con algún tipo de selección dinámica para qué archivos incluir, digamos todos ascx-archivos en una carpeta específica cambiaron los últimos 5 días.
Ahí lo tienes.
Suscríbase a la fuente RSS, es una mina de oro Sitecore: http://pipes.yahoo.com/pipes/pipe.run?_id=ZsFOz4a62xG9Py3Idbq02Q&_render=rss –