ใช้การควบคุมเวอร์ชันสำหรับการพัฒนาบ้าน?


138

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

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

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

ลิงค์ :


2
การใช้การควบคุมแหล่งข้อมูลง่ายกว่าการทำสำเนาสำรองแบบแมนนวล! บางทีการเรียนรู้วิธีการสำรองข้อมูลด้วยตนเองอาจง่ายกว่าการเรียนรู้วิธีใช้ตัวควบคุมแหล่งข้อมูล
yfeldblum

1
ฉันสามารถแนะนำ VisualSVN ใช้งานง่ายมาก และเซิร์ฟเวอร์การโค่นล้มของพวกเขาเป็นอิสระ :) ( visualsvn.com )
Svish

ใช้เซิร์ฟเวอร์ที่โฮสต์แทนคุณจะได้รับการบำรุงรักษาเป็นศูนย์ + สำรอง ฉันใช้ Unfuddle: stackoverflow.com/questions/430742/…
ripper234

คำตอบ:


191

อย่างสมบูรณ์

เครดิตยังไปที่http://blogs.embarcadero.com/nickhodges/2010/04/23/39416 :

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

13
มีอีกสิ่งหนึ่งที่จะเพิ่ม: หากระบบควบคุมเวอร์ชันอยู่ในเครื่องระยะไกลจะให้การสำรองข้อมูลออนไลน์ที่เรียบง่ายสำหรับงานของคุณ
NotMe

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

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

ฉันขอแนะนำ git อีกครั้งโดยเฉพาะอย่างยิ่งสำหรับคะแนน 2 5. และ 6. git มีอินเทอร์เฟซที่ดีมากสำหรับการแท็กการแยกการรวมและอื่น ๆ และเครื่องมือกราฟิกบางอย่างเช่น qgit หรือ gitk ทำให้ง่ายต่อการดูว่า สาขาพอดีกัน .. ก็ยังมีชิ้นส่วนของเค้กที่จะเปิดปัจจุบัน (unversioned) ไดเรกทอรีการทำงานของคุณลงในไดเรกทอรีคอมไพล์ที่มี 3 คำสั่ง: คอมไพล์ init, คอมไพล์เพิ่ม, คอมไพล์กระทำ.
เดวิดคลาริดจ์

หากโครงการส่วนบุคคลของคุณใหญ่พอที่จะทำให้ประเด็น 4 (ประสิทธิภาพการจัดเก็บ) สำคัญคุณต้องมีการควบคุมแหล่งที่มาอย่างแน่นอน!
Tikhon Jelvis

31

มันคุ้มค่าโดยสิ้นเชิง

โปรดทราบว่าคุณไม่จำเป็นต้องตั้งค่าเซิร์ฟเวอร์ SVN ที่มีคุณสมบัติครบถ้วน คุณสามารถสร้างที่เก็บในระบบไฟล์โลคัลและเชื่อมต่อกับไฟล์: // ไวยากรณ์ URL ซึ่งหมายความว่าคุณไม่ต้องยุ่งยากในการตั้งค่า SVN daemon (ซึ่งอาจเกินความจำเป็นสำหรับโครงการผู้ใช้รายเดียว)

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


1
ฉันเพิ่งลองใช้คอมไพล์เพราะมีโปรเจ็กต์ที่ฉันใช้อยู่ ฉันเปลี่ยนเป็นคอมไพล์สำหรับโครงการส่วนตัวและงานทันทีที่เห็นว่าเรียบง่ายและรวดเร็วแค่ไหน แนะนำเป็นอย่างยิ่ง
Dave Sherohman

8

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


6

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

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


5

มันคุ้มค่าที่จะทำ มันทำให้คุณมีความสามารถในการลองการรีฟิลแบบบ้าคลั่งและบ้าคลั่งจากนั้นกลับออกมาอย่างง่ายดายหากไม่ได้ผล นอกจากนี้ยังกำหนดนิสัยที่ดีสำหรับถ้า / เมื่อคุณทำงานร่วมกับกลุ่มมากขึ้น

ด้วยการโค่นล้ม (อย่างน้อย) คุณไม่จำเป็นต้องมี "เซิร์ฟเวอร์" ด้วย - ไดเรกทอรีง่ายๆสามารถใช้เป็นที่เก็บของคุณถ้าคุณเข้าถึงด้วย "file: //" URL ประเภท มีหนังสือฟรีเล่มหนึ่งที่มีทุกสิ่งที่คุณควรรู้ในการเริ่มต้น:

http://svnbook.red-bean.com/nightly/en/index.html


4

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


4

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

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