5 คะแนน โดย GN⁺ 2024-02-14 | 1 ความคิดเห็น | แชร์ทาง WhatsApp

เคล็ดลับและเทคนิค Git

  • แนะนำเรื่องที่หลายคนยังไม่ค่อยรู้เกี่ยวกับ Git และฟีเจอร์ใหม่ ๆ ของมัน
  • ในอดีตเคยสอนการใช้งาน Git ขั้นสูง แต่เมื่อไม่นานมานี้พบว่าหลายคนยังไม่รู้จักหลายส่วนของ Git
  • นักพัฒนารุ่นใหม่ไม่มีประสบการณ์ในการย้ายจากระบบควบคุมเวอร์ชันอื่นมาใช้ Git
  • Git สามารถทำบางอย่างได้แล้วซึ่งเมื่อไม่กี่ปีก่อนยังเป็นไปไม่ได้
  • การเปลี่ยนแปลงของ Git อาจเป็นเรื่องเล็กน้อยหรือมีประโยชน์ในกรณีที่เฉพาะเจาะจงมาก

แนะนำซีรีส์

  • มีแผนจะเขียนบทความสั้น 3 ตอนเกี่ยวกับเรื่องน่าสนใจบางอย่างของ Git สำหรับผู้ใช้ระดับกลางถึงระดับสูง
  • หัวข้อมีดังนี้:
    • ของเก่าแต่ยังยอดเยี่ยม
    • ของใหม่ที่เปลี่ยนแปลงอย่างแนบเนียน
    • รีโพซิทอรีขนาดใหญ่มากและโมโนรีโป
  • Git ยังคงมอบสิ่งใหม่ให้ค้นพบอยู่เสมอ จึงเป็นเรื่องสนุกที่จะสำรวจมัน

ความเห็นของ GN⁺

  • Git พัฒนาอย่างต่อเนื่อง และแม้แต่ผู้ใช้ที่มีประสบการณ์ยาวนานก็อาจประหลาดใจกับฟีเจอร์ใหม่ได้
  • สำหรับนักพัฒนารุ่นใหม่ การทำความเข้าใจ Git โดยเปรียบเทียบกับระบบควบคุมเวอร์ชันในอดีตอาจช่วยได้
  • คาดว่าซีรีส์นี้จะมอบเคล็ดลับและเทคนิคที่ช่วยให้ใช้งาน Git ได้อย่างมีประสิทธิภาพมากขึ้น

1 ความคิดเห็น

 
GN⁺ 2024-02-14
ความคิดเห็นบน Hacker News
  • คำกล่าวของผู้เขียน:

    • ผู้เขียนบอกว่าไม่นานมานี้ได้เรียนรู้อะไรหลายอย่าง และกล่าวว่าในช่วงไม่กี่ปีที่ผ่านมา Microsoft และ GitHub ได้ค่อย ๆ เพิ่มความสามารถที่เกี่ยวข้องกับรีโพขนาดใหญ่เข้าไปในแกนหลักของ Git
    • ได้คุยกันอย่างสนุกกับนักพัฒนา Mercurial และพวกเขาบอกว่าสามารถเพิ่มความเร็วได้อย่างน่าทึ่งจากการเขียนฟังก์ชันภายในบางส่วนด้วย Rust
    • กำลังพิจารณา Pro Git ฉบับที่สาม และขอให้ช่วยบอกสิ่งที่คุณเคยเรียนรู้เกี่ยวกับ Git แบบยาก ๆ หรือสิ่งที่อยากรู้ เพื่อจะได้นำไปรวมไว้
  • ผู้ใช้ที่ชอบใช้ Git แบบเรียบง่าย:

    • ไม่อยากเรียนรู้ฟีเจอร์ที่ซับซ้อนของ Git และหลังจาก push โค้ดแล้วก็อยากลืม Git ไปแล้วทำงานต่อ
    • ชื่นชมคนที่รัก Git แต่สำหรับตัวเองมองว่ามันเป็นเพียงเครื่องมือที่จำเป็นต้องใช้
  • ผู้ใช้ที่ได้เรียนรู้สิ่งใหม่เกี่ยวกับ core.fsmonitor:

    • พูดถึง monorepo ขนาดใหญ่ และบอกว่าคงดีถ้ามีความสามารถให้ดาวน์โหลดต่อจาก git clone ได้
    • เล่าประสบการณ์ในช่วงยุค 2000 ที่พยายาม clone รีโพเคอร์เนลผ่านการเชื่อมต่อที่ช้า และกล่าวถึงปัญหาเวลา clone รีโพขนาดใหญ่
    • ชี้ว่าแม้ Git และ Docker จะเป็นซอฟต์แวร์หลักของสแตกการพัฒนาสมัยใหม่ที่ใช้แบนด์วิดท์มาก แต่ก็ยังไม่มีการรองรับการดาวน์โหลดต่อที่เหมาะสม
  • ผู้ใช้ที่อ่านและโหวตบทความเกี่ยวกับ Git ของ Scott Chacon:

    • บอกว่าความเข้าใจระยะแรกเกี่ยวกับโมเดลและโฟลว์ของ Git เกิดขึ้นจากบทความของ Scott Chacon และยังคงเข้าใจได้ดีขึ้นเรื่อย ๆ ผ่านคอนเทนต์ของเขา พร้อมแสดงความขอบคุณ
  • ผู้ใช้ที่พอใจกับ Git:

    • พูดถึงเรื่องที่หลายคนต้องการแก้ความท้าทายของการมีผู้คนจำนวนมากร่วมกันส่งโค้ดเข้าไปในรีลีส ฟีเจอร์ และฮอตฟิกซ์ต่าง ๆ รวมถึงการติดแท็กรีลีสและตามหาบั๊ก ด้วยอินเทอร์เฟซที่ "ง่ายกว่า"
    • ยืนยันว่าการเรียนรู้ Git ไม่ได้ยากขนาดนั้น และบางคนก็ควรพยายามเรียนรู้ Git
  • ผู้ใช้ที่กำลังหา Git command:

    • ระหว่างพยายามหา 10 ไฟล์ที่ถูกแก้ไขมากที่สุดนับตั้งแต่สร้าง ก็ได้ค้นพบคำสั่ง Git เพิ่มเติมที่มีประโยชน์
  • ผู้ใช้ที่ทำให้ Git workflow เรียบง่ายขึ้น:

    • ทำให้ Git workflow เรียบง่ายลงมากด้วย alias ไม่กี่ตัวที่ใช้งานได้ในหลายรูปแบบการตั้งค่า
    • alias เหล่านี้ช่วยให้ซิงก์ branch ปัจจุบันกับ upstream หรือ origin, เผยแพร่การเปลี่ยนแปลงไปยัง remote repository, เปิด PR ที่เหมาะสม และเปิดหน้า GitHub ของรีโพ เป็นต้น
  • ผู้ใช้ที่ใช้เครื่องมือแบบภาพแทน Git command line:

    • ใช้เครื่องมือ Git แบบภาพ เช่น SmartGit หรือเครื่องมือที่มากับ IntelliJ และมองว่าการใช้ Git บน command line เป็นเรื่องสำหรับคนที่ชอบเอาไปอวด
    • ให้เหตุผลว่า porcelain ชวนสับสน และไม่มีสไตล์หรือธีมที่สอดคล้องกันในส่วนติดต่อผู้ใช้ จึงจำเป็นต้องมีชั้น "แบบภาพ" ใหม่
  • ผู้ใช้ที่แชร์เคล็ดลับที่มีประโยชน์เกี่ยวกับ Git:

    • บอกว่าการรู้ว่าสามารถตั้งค่าออปชัน -committerdate เป็นการเรียงลำดับเริ่มต้นได้มีประโยชน์มาก
    • แชร์ข้อควรระวังบางอย่างเกี่ยวกับ git columns และ git maintenance พร้อมแนะนำสคริปต์ที่มีประโยชน์เกี่ยวกับ git blame
  • ผู้ใช้ที่อยากให้เปลี่ยนค่าเริ่มต้นของ Git ได้:

    • คิดว่าค่าเริ่มต้นหลายอย่างของ Git น่าจะทำได้ดีกว่านี้ แต่ก็กล่าวว่าไม่ได้ถูกเปลี่ยนเพราะต้องหลีกเลี่ยงการทำลายความเข้ากันได้ย้อนหลัง