สอนวิธี Contribute Open Source Software Project ส่ง Pull Request แก้ Bug บน GitHub Fastai – OSS Contribution ep.2

จาก ep ที่แล้ว ที่เรากำลังจะช่วยแก้ Bug ใน Tensorboard callback บน GitHub ของ fastai ซึ่งเป็น Bug ที่ทำให้ไม่มีการแสดง Embedding ใน Tensorboard เราได้ศึกษา หาข้อมูล สื่อสาร จนได้ไฟเขียวให้จากทีมงานเรียบร้อย ใน ep นี้เราจะมาเริ่มลงมือแก้ไขโค้ดกันจริง ๆ Commit และ Push ไปไว้บน Github ไปจนสร้าง Pull Request (PR) สำหรับให้ทีมงานเข้ามาดึงโค้ดของเราไป Merge รวมกับโค้ดต้นฉบับ ให้คนทั่วไปได้ใช้ ตามขั้นตอนดังนี้

เริ่มต้น Contribute Open Source Software แก้ Bug ใน Fastai เรื่อง Tensorboard Integration – OSS Contribution ep.1

จากในบทความก่อนหน้า เรื่อง Visualization Deep Neural Network ด้วย Tensorboard ทั้ง 2 Ep (1, 2) ถ้าสังเกตตรง import จะเห็นว่าต่างกัน เนื่องจากใน Official Library ของ fastai มี Bug ทำให้ไม่แสดง Embedding ในแท็ป Projector เป็นเหตุให้เราต้องหา Library ตัวอื่นมาใช้แทน แต่ถ้าเราไม่อยากใช้ Library ภายนอก เนื่องจาก Fast.ai เป็น Open Source Software Project เรามีทางเลือก 2 ทาง 1. คือรอให้ทาง Official เค้าแก้ 2. เราเข้าไป Contribute ช่วยเค้าแก้ ในเคสนี้เราจะลองข้อ 2 เพราะไม่อยากรอ แต่ปัญหาคือเราจะเริ่มต้นอย่างไร

วิธีการลบไฟล์ ที่เรา Commit และ Push ไปแล้ว จาก Git Repository History ด้วย bfg – Git ep.5

ในการใช้ Version Control อย่าง Git บางครั้งเราอาจจะพลาดใส่ไฟล์ที่มีข้อมูลความลับ ไฟล์พาสเวิร์ด เผลอ commit และ push ขึ้นไปยัง Public Repository อย่าง Github ถึงแม้เราจะ rm, commit และ push ไปแล้วก็ตาม ไฟล์นั้นจะยังอยู่ใน history เราจะแก้ไขอย่างไร

วิธีการทำให้ Git Repository ที่เรา Fork มา อัพเดท ตาม Git Repository ต้นฉบับ – Git ep.4

ในกรณีที่เราต้องการใช้ code จาก git repository ของคนอื่นมาเป็นต้นแบบ หรือเป็นโจทย์การเขียนโปรแกรม และเราอยากเก็บ versioning การแก้ไข หรือคำตอบ ของเราเองด้วย จะใช้การ fork repository ต้นฉบับ มาเป็น repository ของเราเอง แต่ปัญหาเกิดขึ้นเมื่อผ่านไป repository ต้นฉบับ มีการอัพเดท เช่น เพิ่มบทเรียน หรือ อัพเกรดเวอร์ชัน แล้วเราจะทำให้ repository ของเราอัพเดทล่าสุดได้อย่างไร โดยที่การแก้ไขของเราไม่หาย