หลังจากที่ Microsoft เข้าซื้อกิจการ GitHub นักพัฒนาจำนวนมากมองหาทางเลือกอื่นในการโฮสต์โค้ดของตน Microsoft (และบริษัทยักษ์ใหญ่อีกมากมาย) มีนิสัยชอบซื้อเทคโนโลยี/ไซต์/ผลิตภัณฑ์ที่ได้รับการพิสูจน์แล้วเพื่อขยายการเข้าถึง Skype เป็นตัวอย่างหนึ่ง และตอนนี้ Github ก็เช่นกัน
อย่างไรก็ตาม ข่าวการเข้าซื้อกิจการของ GitHub กลับกลายเป็นเรื่องเย็นสำหรับชุมชน แม้ว่าโดยส่วนตัวแล้วฉันไม่เคยชอบ GitHub และคิดว่ามันเป็นความหายนะในการใช้งาน แต่ก็เป็นปลายทางที่ต้องไปสำหรับการโฮสต์โครงการโอเพ่นซอร์สจำนวนมาก การผูกขาดนั้นไม่ค่อยจะดีนัก และการสิ้นสุด (ขัดขวาง) ของ GitHub ได้พิสูจน์ให้เห็นอีกครั้ง
โชคดีที่มีระบบควบคุมเวอร์ชันอื่นๆ มากมายให้คุณเลือก ไม่ใช่ทั้งหมดที่มีฟังก์ชันทั้งหมดของ GitHub แต่ขึ้นอยู่กับสิ่งที่คุณต้องการสำหรับตัวเลือกเหล่านี้ค่อนข้างดี หากคุณเป็นหนึ่งในนักพัฒนาที่ต้องการเปลี่ยนจาก GitHub เราจะแสดงรายการทางเลือกบางส่วนที่นี่ เนื่องจากคุณไม่ต้องการไว้วางใจใครด้วยรหัสอันล้ำค่าของคุณใช่ไหม
1. GitLab
ก่อนที่ GitHub จะตกไปอยู่ในมือคนผิด GitLab ก็เป็นทางเลือกที่ได้รับความนิยม ตอนนี้ฉันคาดหวังว่ามันจะดึงดูดความสนใจมากขึ้น GitLab เป็นโอเพ่นซอร์สและรุ่นหลักของมันฟรี มีเวอร์ชันที่ต้องชำระเงินด้วยเช่นกัน พวกเขาเริ่มต้นที่ $ 4 ต่อผู้ใช้ต่อเดือน เป็นเครื่องมือวงจรชีวิต DevOps ที่สมบูรณ์พร้อมฟังก์ชันการวางแผน การทดสอบ การบรรจุหีบห่อ และการเปิดตัว มันมาพร้อมกับวิกิและคุณสมบัติการติดตามปัญหาด้วย คุณสามารถปรับใช้ GitLab ภายในองค์กรหรือในระบบคลาวด์ได้
2. โกกส์
หากการติดตั้งที่ไม่เจ็บปวดคือสิ่งที่คุณกังวลอันดับต้นๆ แล้วล่ะก็ ไม่มีอะไรดีไปกว่า Gogs สำหรับคุณ มันมาพร้อมกับไบนารีที่พร้อมใช้งานสำหรับ Windows, Linux, Mac และ Raspberry Pi แต่คุณยังสามารถใช้ Go เพื่อติดตั้งบนแพลตฟอร์มอื่นที่ Go ทำงาน Gogs มีน้ำหนักเบาและรวดเร็ว และถึงแม้จะไม่มีคุณลักษณะทั้งหมดของชุดสูทราคาแพง แต่ก็มาพร้อมกับวิกิ การติดตามจุดบกพร่อง การควบคุมเวอร์ชัน ฯลฯ
3. แทรค
Trac เป็นตัวเลือกที่ดีหากคุณกำลังมองหา GitHub ทางเลือกที่เรียบง่าย โดยพื้นฐานแล้ว Trac คือวิกิที่เพิ่มขึ้นและระบบติดตามปัญหาสำหรับโครงการพัฒนาซอฟต์แวร์ สำหรับการควบคุมเวอร์ชัน จะใช้ Git และ Subversion แต่สามารถทำงานร่วมกับอีกโหลได้เช่นกัน (เช่น Mercurial, Perforce เป็นต้น) ด้วยฟังก์ชันการรายงานที่ดี Trac เป็นตัวเลือกที่ดีหากคุณต้องติดตามความคืบหน้าของโครงการอย่างสม่ำเสมอและอย่างใกล้ชิด
4. GitBucket
GitBucket เป็นโคลน GitHub ที่เขียนใน Scala ไม่มีคุณสมบัติมากเท่ากับแอพอื่นๆ ในรายการ อันที่จริง ข้อได้เปรียบหลักคือความคล้ายคลึงของ GitHub กล่าวอีกนัยหนึ่ง หากคุณเริ่มขาด GitHub คุณสามารถใช้ GitBucket ได้ตลอดเวลา ฟีเจอร์นี้รวมถึงโปรแกรมดูที่เก็บ การติดตามปัญหา คำขอดึง และวิกิ คุณสามารถขยายฟังก์ชันการทำงานได้ด้วยความช่วยเหลือของปลั๊กอิน แต่อย่าคาดหวังมากเกินไปจากปลั๊กอินเหล่านี้
5. ปรอท
ไม่เหมือนกับซอฟต์แวร์อื่นๆ ในรายการนี้ Mercurial แตกต่างอย่างสิ้นเชิงจาก GitHub เนื่องจากไม่ได้ใช้เซิร์ฟเวอร์ Git แม้ว่าคุณจะสามารถแปลงข้อมูล Mercurial ของคุณเป็นวัตถุ Git ได้ Mercurial ไม่ได้เป็นทางเลือกเดียวของเซิร์ฟเวอร์ที่ไม่ใช่ Git ของ GitHub และยังมีระบบควบคุมเวอร์ชันอื่นๆ เช่น Perforce, Subversion เป็นต้น คุณสามารถใช้เพื่อจัดการซอร์สโค้ดของคุณได้
ฉันรวม Mercurial ไว้ด้วยเพราะมันเป็นแพลตฟอร์มที่ดีและมีส่วนขยายมากมาย นอกจากนี้ เพื่อนของฉันหลายคนที่เคยใช้ทั้ง GitHub และ Mercurial กล่าวว่า Mercurial ใช้งานได้ง่ายกว่ามาก ฉันยังชอบสถาปัตยกรรมแบบกระจาย ในแง่ของคุณสมบัติ การติดตั้งหลักนั้นไม่น่าเหลือเชื่อ แต่มีส่วนขยายสำหรับเกือบทุกอย่างเท่าที่จะจินตนาการได้
ไม่ว่าจะมีหรือไม่มี GitHub ชีวิตก็ดำเนินต่อไป อย่าโศกเศร้ากับ GitHub มากเกินไป – อาจเป็นสิ่งที่ดีที่ Microsoft เป็นเจ้าของในขณะนี้ สิ่งนี้จะกระตุ้นการเติบโตของทางเลือก และฉันเชื่อว่าบางตัวเลือกจะดีกว่า GitHub ที่เรารู้จักในปัจจุบัน