Bagaimana cara memindahkan proyek ke folder lain di Visual Studio? Saya terbiasa dengan struktur ini dalam proyek saya.
-- app
---- Project.Something
---- Project.SomethingElse
Saya ingin mengubah nama seluruh namespace SomethingElse menjadi SomethingNew, apa cara terbaik untuk melakukan itu (tanpa secara manual masuk ke file .sln)?
visual-studio
visual-studio-2008
Egor Pavlikhin
sumber
sumber
Jawaban:
Hapus proyek dari solusi Anda dengan mengklik kanan di jendela Solution Explorer dan memilih Hapus. Pindahkan seluruh folder proyek, termasuk subdirektori ke mana pun Anda ingin pergi. Tambahkan proyek kembali ke solusi Anda.
Nama Namespace adalah sesuatu yang sangat berbeda, cukup edit kode sumbernya.
sumber
Saya mencoba saran untuk menghapus dan menambahkan kembali proyek, tetapi kemudian memperbaiki dependensi bisa menyebalkan.
Saya menggunakan pendekatan ini:
sumber
git mv ...
sebagai gantimv ...
. Lihatgit-mv
dokumentasi untuk info lebih lanjut.sumber
Yang berhasil bagi saya adalah:
..\packages
untuk..\..\..\packages
sejak saya pindah proyek ke folder yang lebih dalam.sumber
Saya memiliki masalah yang sama. Saya menyelesaikannya dengan memindahkan referensi dan dalam waktu kurang dari 15 menit, tanpa mengubah referensi.
Bagi saya solusinya sederhana:
Contoh:
Dalam file solusi (.sln)
Asli: Proyek ("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PATH1.UI", " ScannerPDF \ PATH1.UI \ PATH1.UI.csproj", "{A26438AD-E428-4AE4-8AB8-A5D6933E2 } "Proyek (" {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} ") =" PATH1.DataService "," ScannerPDF \ PATH1.DataService \ PATH1.DataService.csproj "," {ED5A561B-3674-4613E-B134E } "
Baru: Proyek ("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PATH1.MX.UI", "PATH1.MX.UI \ PATH1.UI.csproj", "{A26438AD-E428-4AE4-8AB8 -A5D6933E2D7B} "Proyek (" {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} ") =" PATH1.DataService "," PATH1.DataService \ PATH1.DataService.csproj "," {ED5A561-461-1361-4661-466-466-47-466-466-47-466-466-A-AgAEA4A-A5D6933E2D7B} "Proyek (" {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} ") =" PATH1.DataService "," PATH1.DataService \ PATH1.DataService.csproj "," {ED5A561-461-6613-3661-466-47-466-47-466-47-466-A-61-466-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA } "
Dalam file proyek:
Asli:
Baru:
Referensi asli: .... \ lib \ RCWF \ 2018.1.220.40 \ TelerikCommon.dll
Referensi baru: .. \ lib \ RCWF \ 2018.1.220.40 \ TelerikCommon.dll
sumber
Rangkuman: ganti nama-dan-pindah di VS2019 dengan git, pertahankan riwayat git, tingkatkan R # sedikit, pembaruan referensi proyek tergantung otomatis (penting untuk sln's dengan banyak proyek, kami memiliki> 200)
Saya telah menggunakan langkah-langkah berikut untuk mengubah nama-dan-memindahkan proyek C # di Visual Studio 2019. Proses ini menggunakan R # untuk menyesuaikan ruang nama. Sejarah git dipertahankan dengan melakukan "git mv" (menghindari penambahan / penghapusan penurunan riwayat).
Dua fase: 1) mengganti nama proyek di tempat dan 2) memindahkan proyek.
(Menggunakan tip dari proyek bongkar muat base2 .)
Ganti nama
Catatan: Folder di Windows Explorer tetap menjadi nama lama hingga saat ini (misalnya, Utils.Foo). Ini diperbaiki pada langkah-langkah langkah.
Pindah
Metode ini: 1) mempertahankan sejarah git, 2) memanfaatkan R # untuk menyesuaikan ruang nama secara atom dan 3) memperbarui proyek-proyek yang bergantung secara massal (menghindari pengeditan manual yang membosankan dari file-file sln dan csproj yang tergantung).
bongkar semua proyek dalam solusi (sehingga penghapusan proyek target tidak memicu perubahan dalam proyek dependen)
VS | pilih semua folder solusi di bawah Solusi | klik kanan Bongkar Proyek
pindahkan folder menggunakan git (jadi riwayat dipertahankan)
a) buka Command Command Prompt untuk 2019
b) status git (untuk mengilustrasikan "tidak ada komitmen, pohon bekerja bersih")
c) git mv proyek misalnya, git mv "C: \ Code \ foo \ foo \ Utils.Foo" "C: \ Code \ Foo"
d) status git untuk melihat / memverifikasi perubahan
VS | Penjelajah Solusi | pilih proyek | klik kanan | Hapus (karena semua proyek dibongkar, ini BUKAN dengan benar menghapus referensi untuk itu dalam proyek tergantung)
a) VS | Penjelajah Solusi | pilih folder induk target | klik kanan | Tambah | Proyek yang Ada
PENTING: Konfirmasikan bahwa * .csproj file untuk proyek-proyek dependen telah diperbarui.
(VS | Team Explorer | Perubahan | klik dua kali setiap dependen csproj terdaftar | periksa-verifikasi perubahan jalur ProjectReference)
Gunakan Notepad ++ (atau editor teks lainnya) untuk memperbaiki jalur. Seringkali ini dapat dilakukan dengan pencarian-dan-ganti yang sederhana (misalnya, ../../../../ hingga ../../).
Ini akan memperbarui ...
a) referensi GlobalAssmeblyInfo.cs
b) jalur menuju paket
c) jalur ke file diagram Ketergantungan Validasi
d) lintasan ke lintasan aturan (misalnya,
<CodeAnalysisRuleSet>..\..\..\..\SolutionDependencyValidation\IgnoreWarnings.ruleset</CodeAnalysisRuleSet>
)Simpan Semua, Tutup Solusi, saya lebih suka menghapus folder bin dan obj agar bersih dari sejarah, Buka kembali Solusi
a) VS | Penjelajah Tim | Perubahan
i) akan melihat Staged Changes yang mengungkapkan file-file yang dipindahkan ii) akan melihat proyek-proyek dependen (* .csproj) yang diperbarui dengan baik, tinjau ulang csproj diffs dan perhatikan bahwa jalur telah diperbarui dengan indah !! (Ini adalah keajaiban yang menghindari dengan susah payah memperbarui file csproj secara manual menggunakan editor teks)
b) di Windows Explorer, verifikasi lokasi lama kosong
c) Bersihkan Solusi, Rebuild Solution, Jalankan tes unit, Luncurkan aplikasi di SLN.
sumber
Sangat mudah di VS2012; cukup gunakan fitur pemetaan perubahan:
sumber
di komunitas visual studio 2019, saya melakukan apa yang dikatakan Victor David Francisco Enrique, tetapi hanya perlu menghapus folder .vs invisbile
sumber
Di VS 2015
MVC
, Anda mungkin perlu menambahkan referensi di manajer referensi.sumber
Saya tahu ini mencoba ini berhasil untuk saya.
Dalam visual studio 2017 edisi komunitas itu membuat proyek di jalur ini "C: \ Users \ mark \ source \ repos \ mipmaps \ mipmaps" Ini akan membuat akses ke file ditolak masalah
Sekarang, Anda bisa memperbaikinya dengan cara ini.
tutup proses studio visual Anda. Kemudian, cari proyek Anda dan salin folder proyek Tapi, pertama-tama buatlah Sub-folder Named Projects di dalam folder visual studio 2017 Anda dalam dokumen. Selanjutnya, tempel folder proyek di dalam visual studio 2017 folder Proyek Anda bukan folder visual studio utama 2017 itu harus masuk ke Sub-folder yang disebut Proyek. Selanjutnya, restart Visual studio 2017 Lalu, pilih Open project Solution Kemudian, cari proyek Anda yang Anda tempelkan di visual studio 2017 folder Projects Kemudian bersihkan Project dan bangun kembali, Ini, harus membangun dan mengkompilasi dengan baik. Semoga ini bisa membantu orang lain. Tidak yakin mengapa Microsoft berpikir untuk membangun proyek Anda di jalur yang memerlukan izin menulis ada di luar jangkauan saya.
sumber
Saya ingin perubahan di Git ditampilkan sebagai gerakan / ganti nama daripada menghapus & menambah. Jadi saya melakukan kombo di atas dan posting ini .
Dan sesuaikan jalur proyek dan majelis dari nuget Pkg di file sln melalui editor teks.
sumber
sumber
Ini bekerja untuk saya vb2019. Saya menyalin folder proyek sumber saya. Saya kemudian menempelkan proyek, dan mengganti nama folder menjadi apa pun. Untuk memutuskan ikatan kembali ke folder proyek sumber, saya sementara mengganti nama folder sumber. Saya membuka proyek tujuan saya. Jalur ke formulir dan modul ditemukan kembali di folder lokal. Saya membaca semua formulir dan modul untuk memastikan semuanya berfungsi. Saya menjalankan proyek. Saya menutup proyek. Saya mengganti nama folder proyek sumber kembali ke bukan nama asli. Saya dapat membuka kedua proyek sekaligus tanpa kesalahan.
sumber
Kelompokkan proyek terkait bersama-sama menggunakan folder solusi
Lihat http://msdn.microsoft.com/en-us/library/vstudio/c6c756s6(v=vs.100).aspx
sumber