อะไรคือแนวทางที่เป็นที่ยอมรับในการใช้ VCS จากวัยเด็กของโครงการ


9

พื้นหลัง

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

ปัญหา

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

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

ข้อผูกพันสองสามข้อแรกของฉันคือสิ่งต่าง ๆ เช่น "โครงสร้างไดเรกทอรีพื้นฐานแทน" และ "สร้างตารางฐานข้อมูล" ฉันจะใช้ VCS เมื่อเริ่มต้นโครงการใหม่ได้อย่างไร


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

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

@ Anonymous-: ฉันเขียนชื่อของคุณใหม่เพราะมันอยู่ในรูปแบบของคำถามที่ถือว่าไม่สร้างสรรค์ หวังว่าคุณจะไม่รังเกียจฉันทำสิ่งนี้ในความพยายามที่จะป้องกันไม่ให้มันปิดเร็ว ขออภัยหากคุณสับสน
haylem

@haylem - ไม่มีปัญหาฉันเห็นด้วยกับคุณโดยสิ้นเชิง! ฉันขอขอบคุณที่คุณพยายามเปิดคำถามของฉันซึ่งตอนนี้เรามีคำตอบที่ชัดเจน :)
ผู้ไม่ประสงค์ออกนาม

A (อย่างมาก!) การสอนด่วนเกี่ยวกับ Git -> try.github.com/levels/1/challenges/1
MathAttack

คำตอบ:


13

เริ่มง่าย

git init

เช็คอินก่อนเวลาเช็คอินบ่อย

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

หากรหัสไม่ได้ตรวจสอบในการควบคุมแหล่งที่มามันไม่ได้อยู่ [ ... ]

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

กระทำบ่อยครั้งสมบูรณ์แบบในภายหลังเผยแพร่ครั้งเดียว

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

ในท้ายที่สุดVCS ของคุณอยู่ที่นี่เพื่อช่วยให้คุณ ดังนั้นช่วย VCS ของคุณเพื่อช่วยคุณ !!

อย่าคิดมาก

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

สร้างโครงสร้างไดเรกทอรี (yay!)

ทำให้เป็นนิสัย

ในตอนท้ายของแต่ละวันพยายามสร้างบันทึกของสิ่งที่คุณทำตามบันทึกการกระทำของคุณ หากผลที่คุณได้รับจากgit shortlogและgit logอย่ามองที่น่าพอใจและมีประโยชน์แต่คุณได้ใส่ในจำนวนเงินที่สำคัญของความพยายามในโครงการในระหว่างวันและการตรวจสอบการเปลี่ยนแปลงเหล่านั้นในแล้วคุณอาจจะไม่ได้ทำมันขวา

  • git shortlogควรอ่านเหมือนภาพรวมคร่าวๆของสิ่งที่คุณทำ
  • git logควรอ่านเช่นประวัติและเรื่องราวของโครงการของคุณ

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

3

สิ่งที่คุณกำลังทำคือแนวทางที่ถูกต้อง

คุณกำลังใช้การควบคุมแหล่งที่มาตั้งแต่วันแรก - สิ่งนี้จะช่วยให้แน่ใจว่าคุณมีทุกสิ่งที่คุณต้องการในการควบคุมแหล่งที่มาและไม่มีจุดที่คุณสามารถพูดได้:

ฉันควรจะใช้การควบคุมแหล่งที่มา แต่มันจะใช้เวลานานเกินไปในการตรวจสอบทุกสิ่งนี้เป็นครั้งแรก

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

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