Kantor saya menggunakan Git dan SourceTree untuk kontrol versi kami. Ini terjadi karena ketika saya bergabung ada kontrol versi nol dan SourceTree adalah satu-satunya sistem yang pernah saya gunakan. Saya bukan ahli dengan cara apa pun, tetapi saya adalah yang paling berpengalaman dari rekan kerja saya, jadi saya adalah ahli de facto yang bertanggung jawab untuk mengajar semua orang menggunakan Git dengan benar dan memperbaiki kesalahan yang mereka buat.
Saya membuat dokumen tutorial yang melewati Git dan SourceTree dan menjelaskan setiap langkah proses. Dalam proses Tarik, dialog SourceTree memungkinkan Anda untuk memilih opsi "Komit perubahan yang digabungkan segera". Saya mengerti apa ini dan mengapa ini berguna. Yang tidak saya mengerti adalah mengapa ada orang yang tidak mau menggunakan fitur ini.
Bisakah seseorang menjelaskan mengapa Anda tidak ingin perubahan gabungan Anda dilakukan secara otomatis? Saya mencoba memahami alasannya sehingga saya dapat menjelaskan kegunaan fitur dengan lebih baik dan mendapatkan ide tentang perangkap apa yang harus diwaspadai di masa depan.
Sunting: Saya tidak percaya pertanyaan saya adalah duplikat dari pertanyaan terkait. Pertanyaan terkait secara luas menanyakan seberapa sering untuk melakukan. Saya bertanya mengapa seseorang memilih untuk tidak menggunakan fitur spesifik yang terkait dengan penggabungan komit di SourceTree.
sumber
Jawaban:
Saya tidak ingin menggunakan fitur ini.
Fakta bahwa tidak ada konflik berarti cukup banyak bahwa perubahan yang digabungkan di cabang saya kira-kira tidak dalam baris kode yang sama dengan yang saya buat. Itu tidak berarti bahwa perubahan itu kompatibel dengan perubahan saya. Itu tidak berarti bahwa kode akan dikompilasi, atau bahwa kode akan berfungsi, atau bahwa tes akan berlalu.
Dengan kata lain, dengan menggunakan opsi ini saya berpotensi berakhir dengan komit palsu kode yang mungkin tidak dalam keadaan baik dan yang memerlukan komit baru untuk memperbaikinya. Karena saya melakukan pekerjaan ini lagian, dan karena saya tidak pernah harus mendorong ini palsu berkomitmen hulu, bahkan oleh kesalahan (Goodness melarang, seseorang kemudian dapat menggabungkan bahwa dalam beberapa cabang lainnya!), Saya tidak melihat alasan untuk membuat ini komit dalam pertama tempat.
sumber
Setelah penggabungan, mungkin ada perubahan pada file di repo lokal. Perubahan ini tidak secara otomatis dilakukan ke lokal, kecuali jika Anda mengatur "Komit perubahan segera digabung".
Jika Anda tidak menyetel opsi itu, file muncul di SourceTree sebagai perubahan yang tidak dikomit.
Itu karena Git itu sendiri tidak melakukan kecuali Anda secara eksplisit mengatakannya, dan SourceTree adalah GUI Git. The "Komit perubahan digabung segera" pilihan tidak begitu banyak pilihan, karena merupakan jalan pintas perintah.
Jadi, alasan untuk tidak ingin menggunakan fitur ini jelas: Anda ingin melakukan komit secara manual, atau tidak sama sekali.
Katakanlah Anda menarik master ke cabang fitur Anda. Seorang rekan kerja sedang mengerjakan cabang fitur yang berbeda. Rekan kerja ini memiliki sejarah memecahkan banyak hal. Penggabungan berisi perubahan pada kode umum bersama yang dibuat oleh rekan kerja ini. Jadi, Anda - bersama anggota tim lainnya - tidak melakukan perubahan gabungan hingga Anda yakin bahwa tidak ada perubahan yang dibuat oleh rekan kerja ini yang akan memengaruhi pekerjaan Anda.
Hanya karena tidak ada alasan yang bagus - secara teori - untuk tidak menggunakan fitur ini, pada kenyataannya, ada sejumlah alasan bagus. Berkenaan dengan tutorial Anda, saya hanya akan mengatakan bahwa "99 kali dari 100, ini adalah opsi yang ingin Anda gunakan". Saya tidak berpikir Anda benar-benar perlu masuk ke detail tentang tidak menggunakannya, terutama jika yang lain baru untuk kontrol versi. Itu semua tergantung pada seberapa mendalam Anda berniat untuk menjadi tutorial.
sumber
Jika Anda menggunakan pengait komit pos untuk mendorong komitmen Anda secara otomatis (seperti di /programming//a/7925891/6781678 ), Anda mungkin perlu opsi ini untuk menghindari mendorong komit dengan kualitas yang meragukan.
Saya tidak akan pernah menggunakan keduanya.
sumber