มีเหตุผลที่จะใช้คอมไพล์ในเครื่องของฉันหรือไม่? [ปิด]


22

มันใช้ได้หรือไม่ที่จะใช้คอมไพล์ในพื้นที่เท่านั้น? ฉันไม่ต้องการจ่ายค่าบริการที่ให้บริการพื้นที่เก็บข้อมูลส่วนตัว (เช่น Github) แต่ฉันคิดว่า git เป็นวิธีที่ยอดเยี่ยมในการจัดระเบียบโครงการโอเพ่นซอร์สของฉัน


3
ใช่แล้วทำไมจะไม่เป็นเช่นนั้น ไลนัสยังมีสำเนาคอมไพล์เพียงเครื่องเดียวในเครื่องเดียว

([อ้างอิงที่จำเป็น] สำหรับสำเนาในพื้นที่เท่านั้นที่สามารถอ่านได้ที่mikegerwitz.com/papers/git-horror-story.htmlซึ่งเชื่อมโยงกับวิดีโอ tube youtube.com/watch?v=4XpnKHJAok8ซึ่งยาว 1 ชั่วโมงและฉัน ไม่พบจุดที่เฉพาะเจาะจงที่เขากล่าวถึง)

8
BitBucket เสนอที่เก็บส่วนตัวฟรี
Rig

4
เมื่อเพิ่มแท็กฉันพบว่าgit + การพัฒนาเดี่ยวให้ในฐานะผู้พัฒนาเพียงคนเดียว (ตอนนี้) ฉันจะใช้ Git ได้อย่างไร เป็นสิ่งที่คล้ายกันซึ่งอาจเป็นสิ่งที่คุณกำลังมองหา (หรือจะมองหา)

1
รูปแบบการสำรองข้อมูลแบบหยาบ: นอกจากวิธีอื่นแล้วฉันgit cloneยังใช้แล็ปท็อปของฉันไปยังแฟลชไดรฟ์
Izkata

คำตอบ:


22

แม้ว่าจะสมเหตุสมผลและเป็นไปได้ที่จะใช้ git ในเครื่อง แต่ก็ควรสำรองข้อมูลไว้

คุณสามารถผลักดัน repos ไปที่ใดก็ได้โดยทั่วไป Github เพิ่งจะกลายเป็นโฮสติ้งและการทำงานร่วมกันที่ง่ายดาย มีตัวเลือกอื่น ๆ เช่นการใช้ Google Drive หรือDropboxหากคุณต้องการที่เก็บข้อมูลระยะไกล


12
Bitbucket.org และ Codebreak.com ทั้งคู่มีที่เก็บข้อมูลส่วนตัวฟรี
Kevin

4
โปรดทราบว่า VC ไม่ใช่ข้อมูลสำรอง (แม้ว่าจะดีกว่าไม่มีอะไร) สร้างการสำรองข้อมูลปกติเช่นกัน
sleske

@sleske ทำไม Git ถึงไม่สามารถใช้พื้นที่เก็บข้อมูลส่วนกลางเป็นโซลูชั่นสำรองข้อมูลได้
Hashim

@Hashim: นี่อาจเป็นความเข้าใจผิด แน่นอนเก็บคอมไพล์กลางเป็นโซลูชั่นสำรองข้อมูลที่ดีสำหรับพื้นที่เก็บข้อมูลของคุณ มันไม่ใช่การสำรองข้อมูลทั่วไป ("การสำรองข้อมูล" เช่นเดียวกับใน "การสำรองข้อมูลของไฟล์ทั้งหมดในระบบของคุณ") ฉันแค่ต้องการเตือนทุกคนว่าจำเป็นต้องสำรองข้อมูลทั้งหมดด้วยเช่นกัน
sleske

14

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


4

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

อ่านเพิ่มเติมเกี่ยวกับ gis bisect


ขอบคุณมากเกี่ยวกับสิ่งนี้ (ทำไมฉันไม่ทราบเกี่ยวกับเรื่องนี้ก่อนที่จะกำจัดโค้ด 1,000 บรรทัด ... ) แต่นี่เป็นคำแนะนำมากกว่าคำตอบ +1 ต่อไป
markasoftware

2

"ข้อเสียเปรียบ" เพียงอย่างเดียวของการใช้ Git ในประเทศ (เทียบกับการไม่ใช้ SCM ใด ๆ เลย) คือการทำงานพิเศษของการกระทำ, การแยกและการติดแท็ก - และการทำงานพิเศษนั้นไม่เพียงถูกทอดทิ้งในรูปแบบแกรนด์เท่านั้น และบันทึกความก้าวหน้าของคุณ

โปรดทราบว่า Git เป็น SCM แบบกระจาย ในขณะที่กรณีทั่วไปคือการใช้มันกับพื้นที่เก็บข้อมูลกลางมันถูกออกแบบมาให้ใช้งานได้โดยไม่ต้องหนึ่ง คุณสามารถสร้างแพทช์ (หรือดีกว่า - บันเดิล - ซึ่งเป็นแพ็คของแพทช์ [แพทช์เดียวสามารถมีการคอมมิชชันเดียว]) และส่งทางไปรษณีย์ไปยังเพื่อนร่วมงานของคุณหรือบันทึกเป็นการสำรองข้อมูล สิ่งนี้สะดวกสบายน้อยกว่าการใช้พื้นที่เก็บข้อมูลส่วนกลาง (นั่นเป็นสาเหตุที่คนมักต้องการใช้) แต่ช่วยให้คุณใช้ Git สำหรับการทำงานร่วมกันโดยไม่ต้องจ่ายเงินสำหรับ repo ส่วนตัวหรือโฮสติ้งบนเซิร์ฟเวอร์ของคุณเอง


1

คิดเกี่ยวกับสิ่งที่คุณต้องการและสิ่งที่คุณจะใช้เพื่อ - ความต้องการของคุณ
ถ้ามันเป็นรหัสสำหรับเก็บชั่วคราวสักสองสามชั่วโมงแค่เขียนมันอาจจะโอเค

หากคุณไปถึงจุดที่คุณเริ่ม (หรือรู้สึกถึงความต้องการ) ทำการสำรองข้อมูลเพื่อ 'บันทึกเวอร์ชันที่ใช้งานได้' ระบบการควบคุมเวอร์ชันจะช่วยคุณได้

นอกจากนี้หากคุณได้รับรหัสไปยังจุดทำงานและต้องการที่จะทำขัดขวางของคุณเองมันจะเป็นประโยชน์ในการทำสาขาที่คุณสามารถผสานกลับมาดังแสดงด้านล่างที่ฉันเป็นผู้สนับสนุน แต่เพียงผู้เดียวและ repo นี้ไม่เคยถูกผลัก ทุกที่ ('วิธี uncouple' เป็นสาขาที่ฉันทำเพื่อเก็บชั่วคราว): ป้อนคำอธิบายรูปภาพที่นี่

แน่นอนถ้าคุณยังดูแลซอฟต์แวร์ที่มีหลายรุ่นและ / หรือรุ่นออกมาระบบควบคุมเวอร์ชันจะมีประโยชน์มากโดยเฉพาะอย่างยิ่งกับความสามารถในการผสานการเปลี่ยนแปลง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.