Bagikan melalui


Kontrol sumber dengan file solusi

Alat SolutionPackager dapat digunakan dengan sistem kontrol sumber apa pun. Setelah file Solution.zip telah diekstrak ke folder, cukup tambahkan, dan kirim file ke sistem kontrol sumber Anda. File ini kemudian dapat disinkronisasikan pada komputer lain di mana mereka dapat dikemas ke dalam file solusi .zip identik yang baru.

Aspek penting bila menggunakan file komponen yang diekstrak dalam kontrol sumber adalah menambahkan semua file ke kontrol sumber dapat menyebabkan duplikasi yang tidak diperlukan. Lihat referensi file komponen solusi untuk melihat file yang dihasilkan untuk setiap jenis komponen dan file yang direkomendasikan untuk digunakan dalam kontrol sumber.

Karena penyesuaian dan perubahan lebih lanjut diperlukan untuk solusi, pengembang harus mengedit, atau menyesuaikan komponen melalui sarana yang ada, ekspor lagi untuk membuat file .zip, dan mengekstrak file solusi terkompresi ke dalam folder yang sama.

Penting

Kecuali bagian yang dijelaskan di waktu untuk mengedit file penyesuaian, Pengeditan manual file komponen yang diekstrak dan file .zip tidak didukung.

Bila alat SolutionPackager mengekstrak file komponen, maka file komponen tersebut tidak akan menimpa file komponen yang ada dengan nama yang sama jika konten file identik. Selain itu, alat ini menghormati atribut baca-saja pada file komponen yang menghasilkan peringatan di jendela konsol bahwa file-file tertentu tidak ditulis. Hal ini memungkinkan pengguna untuk memeriksa, dari kontrol sumber, kumpulan minimal file yang berubah. Parameter /clobber dapat digunakan untuk menimpa dan menyebabkan file hanya baca untuk ditulis atau dihapus. Parameter /allowWrite dapat digunakan untuk menilai dampak operasi ekstrak tanpa benar-benar menyebabkan file ditulis atau dihapus. Penggunaan parameter /allowWrite dengan pencatatan log berlebihan itu efektif.

Setelah operasi ekstraksi selesai dengan kumpulan minimal file yang diperiksa dari kontrol sumber, pengembang dapat mengirimkan file yang diubah kembali ke kontrol sumber, seperti yang dilakukan dengan jenis file sumber lainnya.

Pengembangan tim

Bila ada beberapa pengembang yang menangani komponen solusi yang sama, konflik mungkin timbul jika perubahan dari dua pengembang mengakibatkan perubahan pada satu file. Kejadian ini diminimalkan dengan mendekomposisi setiap komponen atau subkomponen yang dapat diedit secara individual ke dalam file yang berbeda. Pertimbangkan contoh berikut:

  1. Pengembang A dan B keduanya mengerjakan solusi yang sama.

  2. Pada komputer independen, mereka berdua mendapatkan sumber terbaru solusi dari kontrol sumber, paket, dan mengimpor file solusi .zip yang tidak terkelola ke dalam organisasi Microsoft Dataverse independen.

  3. Pengembang A mengubahsuaikan tampilan sistem "kontak aktif" dan formulir utama untuk entitas kontak.

  4. Pengembang B mengubahsuaikan formulir utama untuk entitas Akun dan mengubah "tampilan pencarian Kontak".

  5. Kedua pengembang mengekspor dan mengekstrak file solution.zip yang tidak terkelola.

    1. Pengembang A akan perlu untuk memeriksa satu file untuk formulir utama kontak, dan satu file untuk tampilan "kontak aktif".

    2. Pengembang B akan perlu untuk memeriksa satu file untuk formulir utama Akun, dan satu file untuk tampilan "tampilan pencarian Kontak".

  6. Kedua pengembang dapat mengirimkan, dalam urutan apapun, karena perubahan masing-masing menyentuh file terpisah.

  7. Setelah kedua pengiriman selesai, mereka dapat mengulangi langkah #2 dan kemudian melanjutkan untuk membuat perubahan lebih lanjut dalam organisasi independen mereka. Mereka masing-masing memiliki kedua set perubahan, tanpa menimpa pekerjaan mereka sendiri.

Contoh sebelumnya hanya berfungsi bila ada perubahan pada file terpisah. Tidak dapat dihindari bahwa penyesuaian independen memerlukan perubahan dalam satu file. Berdasarkan contoh yang ditunjukkan di atas, pertimbangkan bahwa pengembang B menyesuaikan tampilan "kontak aktif" saat pengembang A juga menyesuaikannya. Dalam contoh baru ini, urutan peristiwa menjadi penting. Proses yang benar untuk merekonsiliasi keadaan ini, yang tertulis secara penuh, adalah sebagai berikut.

  1. Pengembang A dan B keduanya mengerjakan solusi yang sama.

  2. Pada komputer independen, mereka berdua mendapatkan sumber terbaru solusi dari kontrol sumber, paket, dan mengimpor file solusi .zip yang tidak terkelola ke dalam organisasi independen.

  3. Pengembang A mengubahsuaikan tampilan sistem "kontak aktif" dan formulir utama untuk entitas kontak.

  4. Pengembang B mengubahsuaikan formulir utama untuk entitas Akun dan mengubah "Kontak aktif".

  5. Kedua pengembang mengekspor solusi yang tidak terkelola. Zip file dan ekstrak.

    1. Pengembang A akan perlu untuk memeriksa satu file untuk formulir utama kontak, dan satu file untuk tampilan "kontak aktif".

    2. Pengembang B akan perlu untuk memeriksa satu file untuk formulir utama Akun, dan satu file untuk tampilan "Kontak Aktif".

  6. Pengembang A siap terlebih dulu.

    1. Sebelum pengembang A tunduk pada kontrol sumber, mereka harus mendapatkan sumber terbaru untuk memastikan tidak ada check-in sebelumnya yang bertentangan dengan perubahan mereka.

    2. Tidak ada konflik sehingga pengembang A dapat mengirimkan.

  7. Pengembang B siap berikutnya setelah pengembang A.

    1. Sebelum developer B mengirimkannya, mereka harus mendapatkan sumber terbaru untuk memastikan tidak ada check-in sebelumnya yang bertentangan dengan perubahannya.

    2. Ada konflik karena file untuk "Kontak Aktif" telah dimodifikasi sejak pengembang B terakhir mengambil sumber terbaru.

    3. Pengembang B harus merekonsiliasi konflik. Mungkin kemampuan sistem kontrol sumber yang digunakan dapat membantu proses ini; Jika tidak, pilihan berikut adalah semua layak.

      1. Pengembang B, melalui riwayat kontrol sumber, jika tersedia, dapat melihat bahwa pengembang A membuat perubahan sebelumnya. Melalui komunikasi langsung mereka dapat mendiskusikan setiap perubahan. Maka pengembang B hanya perlu memperbarui organisasi dengan resolusi yang disepakati. Pengembang B kemudian mengekspor, mengekstrak, dan menimpa file yang bentrok dan mengirimkannya.

      2. Izinkan kontrol sumber untuk menimpa file lokal. Pengembang B mengemas solusi dan mengimpornya ke organisasi mereka, lalu menilai status tampilan dan menyesuaikannya kembali seperlunya. Selanjutnya, pengembang B dapat mengekspor, mengekstrak, dan menimpa file yang bentrok.

      3. Jika perubahan sebelumnya dapat dianggap tidak perlu, pengembang B mengizinkan salinan file mereka untuk menimpa versi dalam kontrol sumber dan mengirimkannya.

Baik bekerja pada organisasi bersama atau organisasi independen, pengembangan tim solusi Dataverse mengharuskan mereka yang aktif mengerjakan solusi umum untuk mengetahui pekerjaan orang lain. Alat SolutionPackager tidak sepenuhnya menghapus kebutuhan ini, namun memungkinkan penggabungan mudah dari perubahan non-konflik pada tingkat kontrol sumber, dan secara proaktif menyoroti komponen ringkas dengan konflik yang muncul.

Bagian berikutnya adalah proses generik untuk secara efektif menggunakan alat SolutionPackager dalam kontrol sumber saat mengembangkan dengan tim. Pekerjaan ini sama dengan organisasi independen atau organisasi pengembangan bersama, meskipun dengan organisasi bersama, ekspor dan ekstraksi akan secara alami mencakup semua perubahan yang ada dalam solusi, bukan hanya yang dibuat oleh pengembang yang melakukan ekspor. Demikian pula, saat mengimpor file Solution.zip, perilaku alami untuk menimpa semua komponen akan terjadi.

Membuat solusi

Prosedur berikut mengidentifikasi langkah-langkah umum yang digunakan saat pertama kali membuat solusi.

  1. Di organisasi yang bersih, buat solusi di server Dataverse, lalu tambahkan atau buat komponen bila perlu.

  2. Bila Anda siap untuk memasukkan, lakukan langkah berikut.

    1. Ekspor solusi tak terkelola.

    2. Menggunakan alat SolutionPackager, ekstrak solusi ke dalam file komponen.

    3. Dari file komponen yang diekstrak tersebut, tambahkan file yang diperlukan ke kontrol sumber.

    4. Kirim perubahan ini ke kontrol sumber.

Modifikasi solusi

Prosedur berikut mengidentifikasi langkah-langkah umum yang digunakan saat memodifikasi solusi yang ada.

  1. Sinkronisasikan atau Dapatkan sumber file komponen solusi terbaru.

  2. Menggunakan alat SolutionPackager, kemas file komponen ke file solusi .zip yang tidak terkelola.

  3. Impor file solusi yang tidak terkelola ke organisasi.

  4. Sesuaikan dan Edit solusi sesuai kebutuhan.

  5. Bila Anda siap memeriksa perubahan ke kontrol sumber, lakukan langkah-langkah berikut.

    1. Ekspor solusi tak terkelola.

    2. Menggunakan alat SolutionPackager, ekstrak solusi yang diekspor ke dalam file komponen.

    3. Sinkronisasikan atau Dapatkan sumber terbaru dari kontrol sumber.

    4. Merekonsiliasi jika ada konflik.

    5. Kirim perubahan ke kontrol sumber.

    Langkah 2 dan 3 harus dilakukan sebelum penyesuaian lebih lanjut terjadi di organisasi pengembangan. Dalam langkah 5, langkah b harus diselesaikan sebelum langkah c.

Lihat juga

Referensi file komponen solusi (SolutionPackager)
Alat SolutionPackager