# Fork

&#x20;         โดยปกติแล้ว คนที่สามารถเข้าไป commit และ push ใน repository ได้จะต้องเป็นคนที่ได้รับอนุญาตเท่านั้น ถึงแม้ว่าจะเป็น Public repository ก็ตาม

&#x20;         สมมติว่าเรานำ Library ที่มี repository อยู่บน GitHub มาใช้งานแล้ว Library นั้นยังมี bug อยู่ แต่คนดูแลไม่สะดวกเข้ามาแก้ไขให้ กรณีที่เราต้องการนำมาใช้เพื่อให้งานของเราเสร็จเร็วขึ้น ก็ต้องทำการ fork repository นั้นมาไว้ที่ GitHub ของเราแล้วทำการแก้ไขให้เรียบร้อยด้วยตัวเองเลย

&#x20;         ซึ่งสรุปได้ว่า fork คือ **การคัดลอก repository** **(ซึ่งเป็นของคนอื่นที่อนุญาตให้เราเข้าไปดูได้)** มาเก็บไว้เป็น repository ของเราเอง ซึ่งทุก ๆ อย่างจะเหมือนกันทั้งหมด มีจุดต่างที่ว่า**เราเป็นเจ้าของ repository ที่แยกออกมา**เท่านั้นเอง ดังนั้น เราจึงสามารถแก้ไข bug ที่เป็นปัญหานั้นจากใน repository ของเราได้ทันที

![ไปที่ Repo ที่เราต้องการ เเล้วกด Fork (repo ที่เรา fork จะมาอยู่ใน account ของเรา เเล้วทำการ clone ลงมาใช้ได้เลยยย)](https://1572294076-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Me05uuZ2Kw6VszdHXnU%2F-MglYM6lh1tbEBnUkOAm%2F-MglZQeY5kAwtOrBlxXg%2Fimage.png?alt=media\&token=ba2ca748-2433-4473-ade6-175df9c6069d)
