¿Cómo muevo un proyecto a una carpeta diferente en Visual Studio? Estoy acostumbrado a esta estructura en mis proyectos.
-- app
---- Project.Something
---- Project.SomethingElse
Quiero cambiar el nombre de todo el espacio de nombres SomethingElse to SomethingNew, ¿cuál es la mejor manera de hacerlo (sin entrar manualmente en el archivo .sln)?
visual-studio
visual-studio-2008
Egor Pavlikhin
fuente
fuente
Respuestas:
Elimine el proyecto de su solución haciendo clic con el botón derecho en la ventana Explorador de soluciones y seleccionando Eliminar. Mueva toda la carpeta del proyecto, incluidos los subdirectorios donde quiera que vaya. Agregue el proyecto nuevamente a su solución.
Los nombres de espacios de nombres son algo completamente diferente, solo edite el código fuente.
fuente
Intenté la sugerencia de eliminar y volver a agregar el proyecto, pero luego arreglar las dependencias puede ser difícil.
Yo uso este enfoque:
fuente
git mv ...
lugar demv ...
. Vergit-mv
documentación para más información.fuente
Lo que funcionó para mí fue:
..\packages
a..\..\..\packages
desde que me mudé el proyecto a una carpeta más profunda.fuente
Yo tuve el mismo problema. Resolví con mover las referencias y en menos de 15 minutos, sin cambiar las referencias.
Para mí la solución fue simple:
Ejemplos:
En archivo de solución (.sln)
Original: Proyecto ("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PATH1.UI", " ScannerPDF \ PATH1.UI \ PATH1.UI.csproj", "{A26438AD-E428-4AE4-8AB8-A5D6933E2D7B } "Project (" {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} ") =" PATH1.DataService "," ScannerPDF \ PATH1.DataService \ PATH1.DataService.csproj "," {ED5A561B-3674-4613-ADE5-B11E2E2E11E2 } "
Nuevo: Proyecto ("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PATH1.MX.UI", "PATH1.MX.UI \ PATH1.UI.csproj", "{A26438AD-E428-4AE4-8AB8 -A5D6933E2D7B} "Proyecto (" {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} ") =" PATH1.DataService "," PATH1. } "
En archivo de proyecto:
Original:
Nuevo:
Referencia original: .... \ lib \ RCWF \ 2018.1.220.40 \ TelerikCommon.dll
Nueva referencia: .. \ lib \ RCWF \ 2018.1.220.40 \ TelerikCommon.dll
fuente
Resumen: renombrar y mover en VS2019 con git, retener el historial de git, aprovechar R # un poco, actualizar automáticamente la referencia de proyecto dependiente (importante para sln con muchos proyectos, tenemos> 200)
He estado usando los siguientes pasos para renombrar y mover proyectos de C # en Visual Studio 2019. Este proceso usa R # para ajustar los espacios de nombres. El historial de git se retiene haciendo un "git mv" (evitando agregar / eliminar la caída del historial).
Dos fases: 1) cambiar el nombre del proyecto en su lugar y 2) mover el proyecto.
(Utiliza consejos de proyectos de descarga de base2 ).
Rebautizar
Nota: La carpeta en el Explorador de Windows sigue siendo el nombre antiguo hasta este punto (por ejemplo, Utils.Foo). Esto se soluciona en los pasos de movimiento.
Moverse
Este método: 1) conserva el historial de git, 2) aprovecha R # para ajustar los espacios de nombres atómicamente y 3) actualiza los proyectos dependientes en masa (evita la tediosa edición manual de archivos sln y csproj dependientes).
descargar todos los proyectos en la solución (de modo que la eliminación del proyecto de destino no desencadene cambios en proyectos dependientes)
VS | seleccione todas las carpetas de soluciones en la Solución | haga clic con el botón derecho en Descargar proyectos
mover carpetas usando git (para mantener el historial)
a) Abra el símbolo del sistema del desarrollador para 2019
b) estado de git (para ilustrar "nada que comprometerse, árbol de trabajo limpio")
c) git mv el proyecto, por ejemplo, git mv "C: \ Code \ foo \ foo \ Utils.Foo" "C: \ Code \ Foo"
d) estado de git para ver / verificar el cambio
VS | Explorador de soluciones | seleccione proyecto | clic derecho | Eliminar (dado que todos los proyectos están descargados, esto NO eliminará correctamente las referencias a él en proyectos dependientes)
a) VS | Explorador de soluciones | seleccione la carpeta principal de destino | clic derecho | Añadir | Proyecto existente
IMPORTANTE: confirme que se hayan actualizado los archivos * .csproj para proyectos dependientes.
(VS | Team Explorer | Cambios | haga doble clic en cualquier csproj dependiente enumerado | inspeccionar-verificar el cambio de ruta de ProjectReference)
Use Notepad ++ (u otro editor de texto) para arreglar las rutas. A menudo esto se puede hacer con una simple búsqueda y reemplazo (por ejemplo, ../../../../ a ../../).
Esto actualizará ...
a) Referencias de GlobalAssmeblyInfo.cs
b) rutas a paquetes
c) rutas a los archivos de diagrama de validación de dependencia
d) rutas a rutas de conjunto de reglas (por ejemplo,
<CodeAnalysisRuleSet>..\..\..\..\SolutionDependencyValidation\IgnoreWarnings.ruleset</CodeAnalysisRuleSet>
)Guardar todo, cerrar solución, prefiero eliminar carpetas bin y obj para limpiar el historial, volver a abrir la solución
a) VS | Team Explorer | Cambios
i) debería ver los cambios por etapas que revelan los archivos que se movieron ii) debería ver proyectos dependientes (* .csproj) que se actualizaron muy bien, revise los csproj diffs y observe que las rutas se han actualizado maravillosamente. (esta es la magia que evita laboriosamente actualizar manualmente los archivos csproj usando un editor de texto)
b) en el Explorador de Windows, verifique que la ubicación anterior esté vacía
c) Limpiar solución, reconstruir solución, ejecutar pruebas unitarias, iniciar aplicaciones en sln.
fuente
Es fácil en VS2012; solo use la función de mapeo de cambios:
fuente
en visual studio comunity 2019, hice lo que dice Victor David Francisco Enrique, pero solo necesitaba eliminar la carpeta .vs invisbile
fuente
En VS 2015
MVC
, puede que necesite agregar la referencia en el administrador de referencias.fuente
Me di cuenta de esto, intenta esto, funcionó para mí.
En Visual Studio 2017 Community Edition crea un proyecto en esta ruta "C: \ Users \ mark \ source \ repos \ mipmaps \ mipmaps" Esto creará un problema de acceso al archivo denegado
Ahora, puedes arreglar eso de esta manera.
cierra tu proceso de estudio visual. Luego, encuentre su proyecto y copie la carpeta del proyecto. Pero, primero haga una Subcarpeta Proyectos con nombre dentro de su carpeta de Visual Studio 2017 en documentos. A continuación, pegue la carpeta del proyecto dentro de su carpeta de proyectos de Visual Studio 2017, no la carpeta principal de Visual Studio 2017, debe ir a la Subcarpeta llamada Proyectos. A continuación, reinicie Visual studio 2017 Luego, elija Abrir solución de proyecto Luego, encuentre su proyecto que pegó en su carpeta de Proyectos de visual studio 2017 Luego limpie el Proyecto y vuelva a generarlo, Debería compilar y compilar perfectamente. Espero que esto haya ayudado a nadie más. No estoy seguro de por qué Microsoft pensó que construir sus proyectos en una ruta donde necesita permisos de escritura está más allá de mí.
fuente
Quería que los cambios en Git se mostraran como movimientos / cambios de nombre en lugar de eliminar y agregar. Así que hice un combo de lo anterior y esta publicación .
Y ajuste las rutas de los proyectos y de los ensamblajes desde los paquetes nuget en el archivo sln a través de un editor de texto.
fuente
fuente
Esto funcionó para mí vb2019. Copié mi carpeta de proyecto de origen. Luego pegué el proyecto y cambié el nombre de la carpeta a lo que sea. Para romper los lazos con la carpeta del proyecto fuente, cambié temporalmente el nombre de la carpeta fuente. Abrí mi proyecto de destino. Las rutas a los formularios y módulos se volvieron a descubrir en la carpeta local. Revisé todos mis formularios y módulos para asegurarme de que funcionaran. Ejecuté el proyecto. Cerré el proyecto. Cambié el nombre de la carpeta del proyecto de origen a nombre original. Puedo abrir ambos proyectos al mismo tiempo sin errores.
fuente
Agrupe proyectos relacionados usando carpetas de soluciones
Ver http://msdn.microsoft.com/en-us/library/vstudio/c6c756s6(v=vs.100).aspx
fuente