Saya seorang commiter kebiasaan dan saya menemukan yang cocok untuk saya, tetapi diakui pesan komit saya hampir selalu seperti,
Age: 9 mins [*] Working on implementing and testing PaintSystem.
Age: 17 mins [*] Working on implementing and testing PaintSystem.
Age: 37 mins [*] Working on implementing and testing PaintSystem.
Age: 52 mins [*] Working on implementing and testing PaintSystem.
Jadi saya tidak bisa mengatakan dengan tepat bahwa melakukan komit yang sering dan kebiasaan seperti itu ke cabang saya (lincah) telah mendorong log komit yang paling detail. Kadang-kadang saya bahkan akan melakukan kode setengah jalan dilakukan jika, katakanlah, istri saya meminta saya untuk pergi makan malam di mana saya hanya akan dengan cepat menyalin dan menggunakan pesan komit "Bekerja [...]" sebelumnya.
Pola log komit saya biasanya seperti, "Working on [...] Working on [...] Working [...] Completed [...] Started working on [...] Working on [...] Completed [...] Started working on [...]"
Di sisi lain, itu telah menyelamatkan pantat saya. Kadang-kadang saya benar-benar mengalami kasus tepi yang tidak saya antisipasi dan uji, pada titik mana komitmen sering membantu saya mencari tahu di mana saya memperkenalkan kesalahan.
Jadi saya tidak tahu tentang kebiasaan terbaik dan saya jelas bukan orang yang mau mendengarkan sejauh kebiasaan penebangan yang ideal, tapi saya bisa mengatakan bahwa melakukan lebih sering pasti dapat membantu ketika Anda perlu melakukan regresi.
Haruskah setiap perubahan satu baris mendapat komitmen?
Saya telah melakukan perubahan satu baris sebelumnya tetapi biasanya yang rumit dan mungkin saya kekurangan waktu. Komitmen saya tidak selalu menyerupai unit kerja atau perubahan yang sempurna dan lengkap. Seperti yang dikatakan, kadang-kadang itu hanya hasil dari istri saya yang meminta saya untuk keluar untuk makan malam tanpa terduga.
TBH banyak komitmen saya yang mengikuti "Working on [...]"
pola log tidak memodelkan unit perubahan yang koheren (mengapa saya sering tidak dapat menghasilkan pesan yang lebih baik daripada "Working on [...]"
) tetapi hanya hasil dari saya mengambil nafas, seperti membuat sendiri secangkir kopi. The "Completed [...]"
pesan menunjukkan akhir dari unit kerja, dan di sana saya sering menulis pesan jauh lebih rinci bersama dengan pertama "Started working on [...]"
pesan jenis ketika saya hanya mulai mengerjakan sesuatu. Jika Anda rata-rata melakukan seperti setiap 15 menit sekali, maka pesan "Sedang mengerjakan [...]" itu lebih seperti di-sela untuk apa yang mungkin dilakukan seseorang dalam satu komitmen yang lebih besar dengan pesan yang lebih terperinci.
Haruskah saya melakukan sebelum pengujian (misalnya, setidaknya untuk kesalahan sintaks / kompilasi dan kemudian harus benar-benar membatalkannya; karena idenya tidak berfungsi atau pesannya bohong)?
Saya langsung saja melakukannya sebelum menjalankan tes kadang-kadang (lagi jika saya memiliki acara yang tidak terduga). Juga meskipun saya solo, saya mendorong ke server (hanya satu yang berjalan di sini di rumah pada LAN) yang melakukan CI. Itu mungkin terlihat seperti kerja keras tetapi tidak tahu, saya terbiasa bersandar pada itu di tempat kerja saya yang dulu. Ditambah lagi, saya tidak ingin repot harus menjalankan semua unit saya dan tes integrasi dengan tangan setiap kali. Saya suka semua itu terikat hanya mendorong. Jika sebuah tes gagal, cukup mudah untuk bekerja dengan cara yang bergerak maju di mana saya melakukan regresi, perbaiki kesalahan di putaran terakhir, dan teruskan. Yang mengatakan, saya setidaknya membangun kode terhadap membangun debug sebelum saya komit.
Haruskah saya memastikan saya melakukan setiap pagi / sore sebelum saya berhenti bekerja untuk makan malam sementara masih segar?
Saya suka komit sebelum saya keluar dan memiliki istirahat di antara pemrograman. Saya tidak terlalu memikirkan mengapa sampai saya menemukan pertanyaan ini. Saya kira itu untuk mencegah diri saya mengambil di mana saya tinggalkan tanpa log komit ada di tempat di mana saya tinggalkan sehingga saya bisa berbeda dan sebagainya. Hmm, saya perlu kembali kepada Anda tentang itu karena mungkin secara teoritis tidak diperlukan mengingat seberapa sering saya berkomitmen. Saya masih merasa lebih nyaman melakukan dan mendorong sebelum saya meninggalkan komputer untuk alasan apa pun. Beberapa di antaranya mungkin bekas ketakutan psikologis itu, katakanlah, komputer terbakar setelah saya pergi dan memiliki manajer proyek kembali pada hari-hari ketika kami menggunakan SVN dengan devs kadang-kadang berlangsung selama berminggu-minggu tanpa melakukan pernafasan kami dan terus-menerus mengingatkan kami untuk memeriksa kode sesering mungkin sambil mengingatkan kami bahwa kode kami adalah milik perusahaan. Juga sedikit lebih efisien terutama dengan mendorong sehingga proses CI saya dapat mulai menjalankan semua tes saat saya pergi sehingga saya bisa kembali dan melihat hasilnya.
Oh dan kadang-kadang saya sedikit mabuk setelah saya pergi dan biasanya ide yang buruk untuk mencoba menulis kode kompleks saat mabuk (meskipun tidak selalu; suatu kali saya datang dengan sistem menu konteks yang sangat bagus setelah mengalami momen eureka saat mabuk, tapi saya hanya punya 6 bir dan tidak rumit untuk dikodekan). Jika saya mencoba melakukan itu, setidaknya saya melakukan kode yang ditulis dengan serius sebelum saya pergi untuk kembali ke arah alih-alih mencampur kode mabuk dengan kode mabuk, di mana titik komit log saya mungkin berbunyi seperti, "Reverting back to code written before Jagermeister shots."
saya tidak melakukan ini sangat sering kecuali saya mendapat inspirasi kode mabuk, tetapi dalam kasus-kasus yang jarang, itu benar-benar membantu saya melakukan sesuatu sebelum saya keluar dan mabuk.