GitHub กับ Bitbucket: ทีมไหนเหมาะกับทีมพัฒนาของคุณ?
เผยแพร่แล้ว: 2019-04-10การเลือกแพลตฟอร์มการควบคุมแหล่งที่มาที่เหมาะสมสำหรับทีมของคุณถือเป็นหนึ่งในการตัดสินใจที่สำคัญที่สุดที่คุณจะต้องทำ มีโอกาสดีที่คุณจะเลือก Git สำหรับซอฟต์แวร์ควบคุมเวอร์ชัน (VCS) เอง แต่แพลตฟอร์มที่ใช้โค้ดก็มีความสำคัญเท่าเทียมกัน หลายครั้ง มันลงมาที่ Bitbucket กับ GitHub ในช่วงหลายปีที่ผ่านมา ทั้งสองได้เติบโตชุมชนและฐานผู้ใช้ที่แข็งแกร่ง ในโพสต์นี้ เราต้องการดูทั้งสองแพลตฟอร์มเพื่อดูว่าแพลตฟอร์มใดตอบสนองความต้องการของทีมพัฒนาของคุณได้ดีกว่า
GitHub vs Bitbucket: พื้นฐาน
หากคุณเป็นผู้มาใหม่ใน Git, GitHub และ Bitbucket ทั้งหมด คุณอาจต้องการดูคู่มือสำหรับผู้เริ่มต้นใช้งาน Git ของเรา โดยจะแนะนำคุณเกี่ยวกับปัจจัยพื้นฐานและเตรียมคุณให้พร้อมสำหรับการทำความเข้าใจว่าเกิดอะไรขึ้นในบทความนี้
หากคุณสรุปถึงความแตกต่างพื้นฐานและพื้นฐานที่สุดระหว่าง GitHub และ Bitbucket ก็คือ: GitHub มุ่งเน้นที่รหัสสาธารณะ และ Bitbucket มีไว้สำหรับส่วนตัว โดยทั่วไป GitHub มีชุมชนโอเพ่นซอร์สขนาดใหญ่ และ Bitbucket มักจะมีผู้ใช้ระดับองค์กรและธุรกิจเป็นส่วนใหญ่
ไม่ได้หมายความว่าคุณไม่สามารถมีที่เก็บส่วนตัวบน GitHub (คุณทำได้) หรือว่าคุณไม่สามารถโพสต์รหัสของคุณแบบสาธารณะบน Bitbucket (คุณทำได้อีกครั้ง) อย่างไรก็ตาม ผู้ใช้ส่วนใหญ่ไม่ทำเช่นนั้น นอกจากนี้ ค่าดีฟอลต์ยังถูกตั้งค่าเช่นนั้น: ที่เก็บสาธารณะและส่วนตัวตามลำดับ
นอกเหนือจากความแตกต่างนั้น ทั้งสองแพลตฟอร์มทำงานคล้ายกันมาก คุณสามารถสร้างและจัดการที่เก็บข้อมูลผ่านทางเว็บไซต์หรือบรรทัดคำสั่ง เข้าสู่ระบบด้วยการตรวจสอบสิทธิ์สองปัจจัย (2FA) เชิญผู้ทำงานร่วมกัน เปิดประเด็นและอภิปราย สร้าง/รวมคำขอดึงข้อมูล และโดยทั่วไปจะจัดการสิ่งพื้นฐานทั้งหมดที่คุณต้องการ เว็บไซต์ พวกมันคล้ายกันมาก ที่กล่าวว่า มาเจาะลึกข้อมูลเฉพาะของแต่ละแพลตฟอร์มเพื่อให้คุณสามารถตัดสินใจได้อย่างมีข้อมูลมากที่สุด
Bitbucket

เนื่องจาก Bitbucket เป็นผลิตภัณฑ์ Atlassian (ผู้ผลิต Trello และแอปอื่นๆ) คุณมีอินเทอร์เฟซที่ลื่นไหลและสะอาดตาตั้งแต่วินาทีที่คุณเข้าสู่ระบบ คุณจะเห็นได้ทันทีว่าพวกเขามุ่งเน้นที่ทีมงานมืออาชีพในฐานะโซลูชันแบบครบวงจรสำหรับ การพัฒนาซอฟต์แวร์. มาดูกันว่าเป็นอย่างไร
1. ไม่ใช่แค่ Git

เห็นได้ชัดว่า GitHub เป็นฮับสำหรับการควบคุมเวอร์ชันคอมไพล์ ในทางกลับกัน BitBucket รองรับมากกว่าแค่คอมไพล์ คุณยังสามารถติดตามที่เก็บของคุณใน Mercurial ซึ่งเป็นระบบจัดการการควบคุมเวอร์ชันยอดนิยมอีกระบบหนึ่ง ไม่รองรับ SVN ซึ่งเป็นระบบหลักอีกระบบหนึ่ง แต่อย่างน้อยกับ Bitbucket คุณมีทางเลือก
2. อินเทอร์เฟซ

การใช้เว็บไซต์ของ Bitbucket นั้นยอดเยี่ยมมาก เป็นเรื่องง่ายและเรียบง่าย และคุณรู้อยู่เสมอว่าเกิดอะไรขึ้น เว็บไซต์ของ GitHub ใช้งานได้ แต่ไม่ชัดเจนเสมอไปว่าคุณต้องทำอะไรเพื่อให้บรรลุผลสำเร็จ ซึ่งไม่ค่อยเกิดขึ้นกับ Bitbucket แถบด้านข้างจะบอกคุณอย่างชัดเจนว่าคุณอยู่ที่ไหนและทำอะไรได้บ้าง โปรดทราบว่านี่เป็นเพียงด้านกราฟิกของเว็บไซต์ — ทั้งสองใช้คำสั่ง git เดียวกันเมื่อคุณเข้าถึงผ่านบรรทัดคำสั่ง
4. ไคลเอ็นต์เดสก์ท็อป

พื้นที่หนึ่งที่ขาดหายไปจาก Bitbucket ของ Atlassian อย่างน่าประหลาดใจคือไคลเอนต์เดสก์ท็อป (GitHub สร้างมันขึ้นมา) แม้ว่าผู้ใช้จำนวนมากจะตั้งค่าเริ่มต้นเป็นอินเทอร์เฟซบรรทัดคำสั่งและการควบคุมที่ดีที่มอบให้กับการกำหนดเวอร์ชันซอฟต์แวร์ของคุณ แต่ก็ยังมีอีกมากที่ชอบความรู้สึกและการโต้ตอบของแอป git หากคุณใช้ Bitbucket คุณจะไม่ได้รับโปรแกรมของบุคคลที่หนึ่ง แต่เป็นโปรแกรมโอเพนซอร์ซที่เรียกว่า Sourcetree
Sourcetree เป็นสิ่งที่ดี ใช้งานได้ ราบรื่น และฟรี Atlassian อาจไม่ได้สร้างมันขึ้นมา แต่นั่นไม่สำคัญ ไม่ว่าลูกค้าของ GitHub หรือ Sourcetree จะไม่รู้สึกว่าแข็งแกร่งเท่ากับ CLI หากคุณมาจากสิ่งนั้น อย่างไรก็ตาม เป็นวิธีที่ดีในการแนะนำผู้คนใหม่ๆ ให้รู้จักกับ git และทำให้พวกเขากลัวน้อยลงเล็กน้อย
5. วิกิและบอร์ด
การมี wiki ของโปรเจ็กต์นั้นมีประโยชน์อย่างมาก ไม่เพียงแต่ทีมของคุณสามารถใช้สำหรับบันทึกภายในระหว่างการพัฒนาเท่านั้น แต่ยังสามารถเปิดเผยต่อสาธารณะในฐานะแหล่งที่มาของเอกสารหลังการเผยแพร่ได้อีกด้วย ด้วย Bitbucket ที่เก็บทุกแห่งสามารถมีวิกิได้ สิ่งที่คุณต้องทำคือเปิดใช้งาน และคุณสามารถควบคุมได้เหมือนกับที่คุณทำใน repo ที่เหลือ

นอกจากนี้ ทีมพัฒนาจำนวนมากใช้บอร์ด Kanban สำหรับการจัดการโครงการ GitHub เสนอแท็บบอร์ดโดยค่าเริ่มต้น และ Bitbucket ไม่มี อย่างไรก็ตาม สิ่งที่พวกเขาทำคือให้คุณเชื่อมโยงบัญชี Trello ของคุณกับที่เก็บ เพื่อให้คุณมีบริการดังกล่าวภายในแดชบอร์ดเว็บไซต์ มันฝังทุกบอร์ด Trello ที่คุณมีอยู่แล้ว หรือคุณสามารถสร้างใหม่ได้

Atlassian ยังมีตลาดแอปที่มีประสิทธิภาพซึ่งคุณสามารถค้นหาเพื่อติดตั้งการผสานการทำงานที่หลากหลายสำหรับโครงการของคุณ คุณอาจต้องการหรือไม่ต้องการสิ่งนี้ แต่เป็นการดีที่รู้ว่ามี
6. สิทธิ์ของสาขา
และสุดท้าย สิทธิ์ของสาขา ด้วย Bitbucket คุณสามารถเลือกว่าใครสามารถทำงานในสาขาใดสาขาหนึ่งได้ แทนที่จะให้ Karen เข้าถึงที่เก็บ คุณสามารถให้สิทธิ์การเข้าถึงแก่เธอได้เพียงสาขาเดียว ด้วยวิธีนี้ ความกลัวของมาสเตอร์ดันโดยไม่ได้ตั้งใจจะถูกลบออก คุณลักษณะนี้มีขนาดใหญ่และเป็นมาตรฐานสำหรับ Bitbucket แม้จะอยู่ในแผนบริการฟรีก็ตาม หากคุณมีทีมขนาดใหญ่และต้องการจัดการคุณสมบัติ การแก้ไขข้อผิดพลาด การเปิดตัว เบต้า และแง่มุมต่างๆ ของโครงการด้วยมือที่ละเอียดอ่อน
GitHub


ย้ายมาที่ GitHub เราควรพูดถึงว่า GitHub เป็นบริการที่มีส่วนแบ่งการตลาดที่ใหญ่ที่สุด ที่จริงแล้ว Microsoft ถูกซื้อกิจการไปเมื่อปีที่แล้ว ซึ่งทำให้ผู้คนย้ายออกจากแพลตฟอร์ม – ไปที่ Bitbucket เป็นหลัก แต่ในช่วงเวลานั้น Microsoft ไม่ได้ส่งผลกระทบต่อการทำงานในแต่ละวันของผู้พัฒนาส่วนใหญ่ ไม่ว่าจะเป็นงานส่วนตัว รหัสภายใน หรืองานโอเพนซอร์ส
1. อินเทอร์เฟซ

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

GitHub เสนอไคลเอนต์เดสก์ท็อปของตัวเอง ในแง่ของความสวยงามและความสะดวกในการใช้งาน ลูกค้ามีความสอดคล้องกับเว็บอินเตอร์เฟสของ Bitbucket มากขึ้น เช่นเดียวกับ Sourcetree ด้านบน ไคลเอนต์ GitHub นั้นยอดเยี่ยมสำหรับการทำให้ผู้คนเข้าสู่ git ที่อาจไม่ชอบบรรทัดคำสั่ง แต่ถ้าคุณเป็นผู้ใช้ระดับสูงหรือต้องการคำสั่งเฉพาะที่ไม่ใช่หนึ่งในคำสั่งหลัก (ดึง ดัน เพิ่ม คอมมิต เช็คเอาต์ ฯลฯ) มีโอกาสสูงที่คุณจะพบว่าลูกค้ารายใดรายหนึ่งขาด ที่กล่าวว่าสำหรับสิ่งที่ทำไคลเอ็นต์ GitHub นั้นมีน้ำหนักเบาและทำในสิ่งที่ควรทำ
3. Repos ส่วนตัวฟรี
ในสิ่งที่เคยเป็นจุดขายที่แข็งแกร่งที่สุดของ Bitbucket ตอนนี้ GitHub เสนอพื้นที่เก็บข้อมูลส่วนตัว ฟรี ไม่จำกัด ก่อนหน้านี้ สามารถสร้างได้เฉพาะที่เก็บสาธารณะฟรี และส่วนตัวมีไว้สำหรับสมาชิกที่ชำระเงินเท่านั้น อย่างไรก็ตาม ตอนนี้ คุณสามารถสร้างได้มากเท่าที่ต้องการฟรีทั้งหมด สิ่งที่จับได้คือคุณสามารถมีผู้มีส่วนร่วมได้เพียง 3 คนในการซื้อคืน (ไม่นับตัวคุณเอง) ดังนั้นหากคุณอยู่ในทีมใหญ่ คุณจะต้องจ่ายเงินโดยไม่คำนึงถึง
แต่สำหรับมือสมัครเล่น ผู้ที่ต้องการแชร์รหัสของตนกับผู้อื่นแต่ไม่สามารถเปิดเผยต่อสาธารณะได้ และสำหรับโปรเจ็กต์ขนาดเล็ก repos ฟรีไม่จำกัดเป็นส่วนเสริมที่น่าทึ่งของ GitHub ซึ่งเจ็บปวดอย่างมากจนกระทั่งมีการรวมนี้
4. Wikis และบอร์ด

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

จุดอ่อนอย่างหนึ่งที่ GitHub ต้องมีต่อ Bitbucket คือที่เก็บส่วนตัวไม่สามารถมีวิกิได้ เรามาลองแปลกันใหม่ว่า: ฟรี ที่เก็บส่วนตัวไม่สามารถมี wiki ได้ หากคุณมี repo สาธารณะฟรี คุณสามารถมี Wiki ได้ หากคุณเป็นสมาชิกแบบชำระเงิน ที่เก็บส่วนตัวของคุณสามารถเข้าถึงวิกิได้ แม้ว่านี่จะไม่ใช่ตัวทำลายข้อตกลงสำหรับหลาย ๆ คน แต่อาจเป็นเรื่องที่น่ารำคาญเล็กน้อยเมื่อคุณต้องทำตามขั้นตอนแฮ็คเพื่อให้ Readme บอร์ดโครงการและปัญหาทำงานเป็นเอกสาร
5. ขีด จำกัด การจัดเก็บสูง
ให้เราพูดแบบนี้ก่อน: git ไม่ใช่ยูทิลิตี้สำรอง คุณไม่ได้ใช้ git สำหรับการจัดเก็บหรือสำรองข้อมูลออนไลน์ มันไม่มีประสิทธิภาพสำหรับสิ่งนั้น และทำให้เซิร์ฟเวอร์และคอมพิวเตอร์ของคุณต้องชะงักงัน อย่างไรก็ตาม ที่กล่าวว่าเมื่อคุณได้รับคอมมิตและพุชและสาขาจำนวนมาก repo ของคุณสามารถเริ่มบรรจุมวลจำนวนมากได้
ประโยชน์ของ GitHub คือคุณจะไม่ถูกเรียกเก็บเงินสำหรับพื้นที่เก็บข้อมูลนั้น แม้ในแผนฟรี มีความจุสูงสุด 100 กิกะไบต์บนที่เก็บ GitHub แม้ว่าพวกเขาจะแนะนำว่ามีขนาดต่ำกว่า 1GB (ซึ่งส่วนใหญ่จะเป็น) การอัพโหลดไฟล์จำกัดที่ 100mb สำหรับบรรทัดคำสั่ง และ 25mb สำหรับการอัพโหลดเว็บ
Bitbucket อนุญาตให้ผู้ใช้ฟรีทั้งหมด 1gb เท่านั้น แทนที่จะขอให้คุณเก็บไว้ต่ำกว่า 1gb แล้วส่งอีเมลถึงคุณเมื่อคุณถึง 75 (ซึ่งเป็นช่วงที่กว้างมากและเป็นทางเลือกที่แปลก) Atlassian ผลักดันคุณไปสู่แผนการชำระเงินที่ 1+gb
ตอนนี้นั่นคือ 1gb ต่อ repo ดังนั้นคุณสามารถมี repos หลายตัวได้ฟรีเช่นนั้น แต่คุณไม่จำเป็นต้องกังวลเกี่ยวกับเรื่องนี้ด้วย GitHub ทั้งคู่เสนอโซลูชันไฟล์ขนาดใหญ่เช่นกัน (Bitbucket อยู่ที่นี่และ GitHub อยู่ที่นี่)
GitHub กับ Bitbucket: ผู้ชนะ?
ฉันไม่คิดว่ามี แม้ว่าบริการจะให้ความรู้สึกที่แตกต่างออกไปโดยสิ้นเชิง และพวกมันกำหนดเป้าหมายกลุ่มประชากรที่แตกต่างกันโดยสิ้นเชิง คุณจะได้รับบริการที่ดีและทำงานให้เสร็จได้ ไม่ว่าคุณจะใช้ Bitbucket กับ GitHub หรือไม่
ในท้ายที่สุดคุณจะไม่ผิดพลาดกับการเลือกของคุณ หากคุณเป็นทีมพัฒนาขนาดเล็ก ทั้งสองทีมจะทำงานเหมือนกันกับคุณแทบทุกประการ แต่ถ้าคุณยังใหม่ต่อ git Bitbucket จะให้อภัยและใช้งานง่ายกว่าเล็กน้อยเมื่อคุณเรียนรู้เวิร์กโฟลว์ หากคุณสนใจในการพัฒนาโอเพ่นซอร์สเลย GitHub เป็นศูนย์กลางหลักสำหรับสิ่งนั้น
ในแง่ของการแก้ปัญหาทางธุรกิจ...มันเป็นเรื่องที่ล้มเหลว แผนการชำระเงินค่อนข้างคล้ายกัน เป็นการยากที่จะให้คำแนะนำในเรื่องนั้น Bitbucket เชี่ยวชาญด้านลูกค้าธุรกิจ โดยนำเสนอโซลูชันแบบครบวงจรผ่านชุดโปรแกรมโดยรวมของ Atlassian แต่ GitHub เป็นแพลตฟอร์มหลักในโอเพนซอร์ซและรหัสสาธารณะ หากบริษัทของคุณมีส่วนเกี่ยวข้อง พวกเขาอาจเป็นวิธีที่จะไป .
อันที่จริงแล้ว ทั้งสองตัวเลือกก็ไม่เลวเลยที่จะให้บริการคุณและความต้องการในการควบคุมแหล่งที่มาของคุณ คุณไม่สามารถผิดพลาดได้ด้วยความซื่อสัตย์สุจริต
คุณและทีมของคุณชอบซอฟต์แวร์และแพลตฟอร์มควบคุมเวอร์ชันใด บอกเราว่าทำไมในความคิดเห็น!
บทความมีรูปภาพโดย Teguh Jati Prasetyo / shutterstock.com
