Pertanyaan Perbedaan antara Solusi Build, Rebuild Solution, dan Clean Solution di Visual Studio?


Apa perbedaan antara Solusi Build, Rebuild Solution, dan Clean Solution di Visual Studio?

Kapan waktu yang tepat untuk menggunakan masing-masing ini?


897
2018-06-22 18:17


asal


Jawaban:


  • Bangun solusi akan melakukan penambahan build: jika tidak berpikir perlu membangun kembali proyek, itu tidak akan. Mungkin juga menggunakan bagian proyek yang sebagian dibangun jika mereka tidak berubah (saya tidak tahu seberapa jauh hal ini)
  • Rebuild solusi akan membersihkan dan kemudian membangun solusi dari awal, mengabaikan apa pun yang sudah dilakukan sebelumnya.
  • Solusi bersih akan menghapus artefak build dari build sebelumnya. Jika ada file lain di direktori target build (bin dan obj) mereka tidak dapat dihapus, tetapi artifact build yang sebenarnya adalah. Saya telah melihat perilaku untuk ini bervariasi - kadang-kadang menghapus cukup teliti dan kadang-kadang tidak - tapi saya akan memberikan VS manfaat dari keraguan untuk saat ini :)

(Tautan itu ke devenv.exe switch baris perintah, tetapi mereka melakukan hal yang sama dengan item menu.)


720
2018-06-22 18:21



Membangun solusi: Menyusun file kode (DLL dan EXE) yang diubah.

Rebuild: Menghapus semua file yang dikompilasi dan mengkompilasinya kembali terlepas apakah kode telah berubah atau tidak.

Solusi bersih: Menghapus semua file yang dikompilasi (file DLL dan EXE).

Anda dapat melihat video YouTube ini (Visual Studio Build vs. Rebuild vs. Clean (C # pertanyaan wawancara dengan jawaban)) di mana saya telah menunjukkan perbedaan dan di bawah ini adalah representasi visual yang akan membantu Anda menganalisis hal yang sama secara lebih rinci.

Build vs Rebuild

Perbedaan antara Rebuild vs. (Clean + Build), karena sepertinya ada beberapa kebingungan di sekitar ini juga:

Perbedaannya adalah cara pembuatan dan urutan bersih terjadi untuk setiap proyek. Katakanlah solusi Anda memiliki dua proyek, "proj1" dan "proj2". Jika Anda melakukan rekondisi, ia akan mengambil "proj1", membersihkan (menghapus) file yang dikompilasi untuk "proj1" dan membuatnya. Setelah itu, akan mengambil proyek kedua "proj2", membersihkan file yang dikompilasi untuk "proj2" dan mengkompilasi "proj2".

Tetapi jika Anda melakukan "bersih" dan membangun ", pertama-tama akan menghapus semua file yang dikompilasi untuk" proj1 "dan" proj2 "dan kemudian akan membangun" proj1 "pertama diikuti oleh" proj2 ".

Rebuild Vs Clean


355
2017-07-22 06:24



Diambil dari Link ini:

Build berarti mengkompilasi dan hanya mengaitkan file sumber yang telah diubah   sejak build terakhir, saat Rebuild   berarti mengkompilasi dan menghubungkan semua sumber   file terlepas dari apakah mereka   berubah atau tidak. Build adalah normal   hal yang harus dilakukan dan lebih cepat. Terkadang   versi target proyek   komponen dapat keluar dari sinkronisasi dan   membangun kembali diperlukan untuk membuat bangunan   sukses. Dalam prakteknya, Anda tidak pernah   perlu Bersihkan.


135
2018-06-22 18:19



Bangun Solusi - Buat rakitan yang telah mengubah file. Jika perakitan tidak memiliki perubahan, tidak akan dibangun kembali. Juga tidak akan menghapus file antara apa pun.

Digunakan paling umum.

Rebuild Solution - Rebuild semua rakitan terlepas dari perubahan tetapi meninggalkan file menengah.

Digunakan ketika Anda melihat bahwa Visual Studio tidak memasukkan perubahan Anda dalam perakitan terbaru. Terkadang Visual Studio melakukan kesalahan.

Solusi Bersih - Hapus semua file perantara dan membangun kembali semua majelis terlepas dari perubahan

Digunakan ketika semuanya gagal dan Anda perlu membersihkan semuanya dan mulai segar.


27
2018-06-22 18:20



Bangun Solusi - Buat rakitan yang telah mengubah file. Jika suatu majelis tidak memiliki perubahan, tidak akan dibangun kembali. Juga tidak akan menghapus file antara apa pun.

Rebuild solusi akan membersihkan dan kemudian membangun solusi dari awal, mengabaikan apa pun yang dilakukan sebelumnya

Solusi Bersih akan menghapus semua file yang dikompilasi (yaitu, EXE dan DLL) dari direktori bin / obj.


13
2017-09-21 16:43



Saya hanya memikirkan Rebuild sebagai melakukan Clean pertama diikuti oleh Build. Mungkin saya salah ... komentar?


12
2018-06-22 18:25



Bangun Solusi - Solusi Build akan membangun aplikasi Anda dengan membangun sejumlah proyek yang mengalami perubahan file. Dan itu tidak jelas file biner yang ada dan hanya mengganti majelis diperbarui dalam folder bin atau obj.

Rebuild Solution - Solusi Rebuild akan membangun seluruh aplikasi Anda dengan membangun semua proyek yang tersedia di solusi Anda dengan membersihkannya. Sebelum membangun itu membersihkan semua file biner dari folder bin dan obj.

Solusi Bersih - Bersihkan solusi hanya membersihkan semua file biner dari folder bin dan obj.


7
2018-06-13 12:53



Solusi Build akan membangun proyek apa pun dalam solusi yang telah berubah. Rebuild membangun semua proyek tidak peduli apa, solusi bersih menghapus semua file sementara memastikan bahwa build berikutnya selesai.


6
2018-06-22 18:20