ฉันจะพยายามให้คำแนะนำแก่คุณจากประสบการณ์ส่วนตัวของฉัน
หนึ่งในเพื่อนร่วมทีมของฉันแม้ว่าจะมีประสบการณ์ แต่ก็ไม่เข้าใจ SVN โดยธรรมชาติพื้นที่ว่างบนแผนที่จิตของเขาแสดงถึงมหาสมุทรของ SVN ทำให้เขาใช้รูปแบบการใช้งานที่ค่อนข้างแปลก
ตัวอย่างเช่นเขาได้ประกาศนโยบาย "1 SVN กระทำต่อวันต่อนักพัฒนา" เพราะมิฉะนั้น "เซิร์ฟเวอร์จะหมดพื้นที่ดิสก์ในไม่ช้า" เมื่อฉันอธิบายเขาว่า SVN กระทำการเป็นเดลต้าไม่ใช่ฉบับเต็มเขาตอบด้วยความสงสัยและแม้กระทั่งทุกวันนี้ฉันก็ไม่แน่ใจเลยว่าเขาเข้าใจความหมายของมันหรือไม่
แม้ว่าพื้นที่ว่างในดิสก์จะมีปัญหาคุณสามารถส่งไฟล์จำนวนมากได้ในคราวเดียวดังนั้นฉันคิดว่าสิ่งที่เขาเสนอคือทางออกที่ผิด นอกจากนี้ยังมีความเป็นไปได้ที่จะเสียพื้นที่จำนวนมากโดยการตรวจสอบในไฟล์ไบนารีขนาดใหญ่เพราะ SVN ไม่ได้จัดเก็บเดลต้าสำหรับไฟล์ไบนารี การเช็คอินหนึ่งครั้งต่อวันก็ไม่ดีเช่นกันเพราะบังคับให้คุณทำการเปลี่ยนแปลงที่ไม่ได้อยู่ด้วยกันเช่นในกรณีที่คุณแก้ไขมากกว่าหนึ่งข้อบกพร่องต่อวัน
ทางออกที่เรานำมาใช้ใน บริษัท ของเราคือมีตัวกรองปฏิเสธการคอมมิทที่มีไฟล์ไบนารี่ เราสามารถบังคับกระทำโดยใช้คำสำคัญพิเศษในความคิดเห็นเช็คอิน (เราต้องแสดง SVN ว่าเรารู้ว่าเรากำลังทำอะไรอยู่) หนึ่งปีหรือสองปีผู้จัดการโครงการจะเก็บสาขาเก่าและลบออกจากที่เก็บ ด้วยกลยุทธ์นี้เราไม่มีปัญหาด้านพื้นที่ที่ฉันรู้ (ที่เก็บของเราสนับสนุนหลายโครงการและมีการแก้ไขมากกว่า 100,000 รายการ)
โดยสรุปคุณสามารถบอกเขาว่าคุณเห็นด้วยกับเขาว่าพื้นที่ว่างในดิสก์เป็นปัญหาสำคัญ แต่ในทางกลับกันชี้ให้เห็น
- ความสำคัญของการเช็คอินที่เกี่ยวข้องกับคุณลักษณะแทนการเช็คอินเสาหินหนึ่งครั้งต่อวัน
- ความจริงที่ว่าโดยการตรวจสอบในไฟล์ไบนารีขนาดใหญ่หนึ่งต่อวันหนึ่งสามารถเติมดิสก์ต่อไป
จากนั้นคุณสามารถแนะนำให้คุณมีการประชุม (อาจเป็นไปได้กับนักพัฒนาอื่น ๆ หรือผู้ดูแลระบบเช่นกัน) เพื่อหารือเกี่ยวกับกลยุทธ์ในการรักษาการใช้พื้นที่ดิสก์ภายใต้การควบคุม (เช่นตัวกรองไบนารีไฟล์การสำรองข้อมูลเป็นประจำ
นอกจากนี้เรายังมีข้อโต้แย้งที่ร้อนแรงว่าจะรวมการกำหนดค่าโครงการ. Eclipse ใน SVN หรือไม่ เพื่อนร่วมทีมของฉันยืนยันว่าเราควรแม้ว่ามันจะทำให้เกิดความขัดแย้งที่ไม่มีจุดหมายมากมาย ฉันไม่เห็นด้วยที่จะเก็บไฟล์กำหนดค่าผู้พัฒนาแต่ละคนไว้ใน SVN ในที่สุดมันกลับกลายเป็นว่าเพื่อนร่วมทีมของฉันมีวิธีการชำระเงินต้นทรีใหม่อีกครั้งหลังจากที่ทุกคอมมิชชันทำเพื่อให้แน่ใจว่า นั่นเป็นเหตุผลที่ทำให้เขายืนกรานที่จะรักษาโครงแบบของโครงการใน SVN - ดังนั้นจึงง่ายต่อการนำเข้าโครงการอีกครั้ง เมื่อฉันอธิบายว่าคอมมิชชันทำสำเนาทำงานกับรีโมตไบต์ต่อไบต์ซึ่งทำให้ไม่จำเป็นต้องเช็กเอาต์ซ้ำเพื่อนร่วมทีมของฉันตอบด้วยความสงสัยอีกครั้งและในที่สุดก็โบกปัญหาทั้งหมดออกไปอย่างไม่มีนัยสำคัญ
ในความเห็นของฉันทีมงานของเราเสียเวลาโดยการแก้ไขข้อขัดแย้ง SVN ในไฟล์การกำหนดค่าโครงการซึ่งมีเฉพาะการตั้งค่าเฉพาะสำหรับนักพัฒนาที่ไม่จำเป็นต้องแชร์กับ SCM เลย ความยุ่งเหยิงทั้งหมดนี้เพราะมีคนปรับกระบวนการรอบ ๆ สมมติฐานที่ไม่ถูกต้อง
คุณใช้บิลด์เซิร์ฟเวอร์หรือไม่? เรามีการสร้างเซิร์ฟเวอร์ที่ตรวจสอบโครงการที่สมบูรณ์และรวบรวมมันทุกคืน เช้าวันรุ่งขึ้นผู้ทดสอบมีตัวติดตั้งพร้อมทดสอบผลิตภัณฑ์ (ถ้าบิลด์ต้นแบบรันอย่างถูกต้อง) และเรา (ผู้พัฒนา) มีรายงานบิลด์พร้อมคำเตือนทั้งหมด (และข้อผิดพลาดในกรณีที่มี) แน่นอนคุณต้องตั้งค่าแฟ้มการกำหนดค่ามาตรฐานสำหรับการสร้างเซิร์ฟเวอร์และตรวจสอบพวกเขาใน. พัฒนาแต่ละแล้วสามารถตรวจสอบพวกเขาออกมาพร้อมกับส่วนที่เหลือของโครงการ แต่พวกเขาจะไม่ได้รับอนุญาตในการตรวจสอบในการใด ๆการเปลี่ยนแปลงในท้องถิ่น
ในสถานการณ์นี้คุณจะต้องตอบสนองความต้องการของเขาเพื่อให้สามารถตรวจสอบโครงการที่สมบูรณ์และสร้างได้ตลอดเวลา คุณหลีกเลี่ยงการใช้เวลาในการรวมการเปลี่ยนแปลงที่ไม่ควรได้รับการตรวจสอบตั้งแต่แรกเพราะมันไม่ได้เป็นส่วนหนึ่งของผลิตภัณฑ์: ผลิตภัณฑ์คือการสร้างต้นแบบและที่ต้องรักษาความสะอาด หากมีคนทำลายการสร้างต้นแบบ (เช่นการตรวจสอบในไฟล์. project ของเขาเอง) คุณสามารถย้อนกลับการเปลี่ยนแปลงหรือบังคับให้ผู้พัฒนารายนั้นแก้ไขปัญหาได้
บางทีถ้าเขานำเสนอปัญหาอีกครั้งคุณสามารถแนะนำให้มีการประชุมอีกครั้ง (อาจเป็นกับผู้พัฒนารายอื่น) และหากลยุทธ์ร่วมกัน
ฉันจะโน้มน้าวให้เพื่อนร่วมทีมที่เห็นตัวเองเป็นผู้อาวุโสเพื่อให้เข้าใจพื้นฐานของ SVN ได้ดีขึ้นได้อย่างไร
ฉันคิดว่ากลยุทธ์ที่ดีที่สุดคือหลีกเลี่ยงการนำความขัดแย้งมาสู่ระดับส่วนบุคคลและพูดคุยปัญหาในมือและแนวทางแก้ไขที่เป็นไปได้ หากคุณมีความประทับใจว่าเขากำลังมองหาการเผชิญหน้าส่วนตัวนี่คือคำแนะนำ (จากประสบการณ์ส่วนตัว):
- พลวัตของทีมเป็นอย่างไร เพื่อนร่วมงานคนอื่น ๆ ของคุณมีประสบการณ์คล้ายกับเพื่อนร่วมทีมนี้หรือไม่? มีคำแนะนำเล็ก ๆ น้อย ๆ ที่ไม่ชัดเจนเกินไปที่ทีมสามารถมอบให้สมาชิกคนหนึ่งของพวกเขาเพื่อกีดกันพฤติกรรมบางอย่าง (เรื่องตลกเล็ก ๆ หรือข้อสังเกต) และส่งเสริมการเผชิญหน้าที่สร้างสรรค์ (เสนอการประชุมหรือเสนอหัวข้ออย่างไม่เป็นทางการในช่วงพักดื่มกาแฟ ) บางครั้งทีมที่ดีสามารถแยกองค์ประกอบรบกวนและนำสิ่งต่าง ๆ กลับมาเป็นปกติได้อย่างรวดเร็ว
- การบริหารงานบุคคลของคุณดีแค่ไหน? เรามีกรณีความขัดแย้งหนึ่งเรื่องใน บริษัท ของเราและหัวหน้าบุคลากรต้องเข้าแทรกแซงเพื่อเคลียร์สถานการณ์ มันไม่ดี แต่บางครั้งบรรยากาศการทำงานแย่ลงมากจนจะไม่ดีขึ้นเอง ฉันหวังว่านี่ไม่ใช่กรณีของคุณ (ฉันยังไม่ได้รู้สึกว่ามันได้มาไกลขนาดนั้น) แต่ก็ดีเสมอที่จะรู้ว่าคุณมีการบริหารงานบุคคลที่ดีหรือหากคุณต้องแก้ปัญหาความขัดแย้งด้วยตัวเอง
เหตุใดฉันจึงเขียนสิ่งนี้ คุณบอกว่าคุณต้องการ "โน้มน้าวเพื่อนร่วมทีมที่มองตัวเองว่าเป็นผู้อาวุโสเพื่อทำความเข้าใจพื้นฐาน SVN ให้ดียิ่งขึ้น" สำหรับฉันดูเหมือนว่าความขัดแย้งอาจกลายเป็นเรื่องส่วนตัวเกินไป นักจิตวิทยาบางคนยืนยันว่า 70% ของการสื่อสารของเราอยู่ในระดับอารมณ์หากระดับนี้ไม่ได้ทำงานคนก็หยุดพูดเกี่ยวกับข้อเท็จจริงเพราะพวกเขายุ่งกับเรื่องอารมณ์มากเกินไป
ดังนั้นนอกเหนือจากการอธิบายประเด็นของคุณคุณสามารถลองทำบางสิ่งเพื่อปรับปรุงการสื่อสาร การเชิญกาแฟหรือพักทานอาหารกลางวันด้วยกันการสนทนาสั้น ๆ เกี่ยวกับหัวข้อที่ไม่เกี่ยวข้องกับงาน ฯลฯ สามารถปรับปรุงการสื่อสารและนำความสนใจของเพื่อนร่วมงานกลับไปสู่ข้อเท็จจริงสำคัญที่คุณต้องการให้เขาเข้าใจ หากเขายอมรับการสื่อสารประเภทนี้บางทีความขัดแย้งที่คุณมีมานั้นอาจเกี่ยวข้องกับความจริงที่ว่าคุณไม่รู้จักกันดีและมีความเข้าใจผิดเล็กน้อยบางอย่าง แต่เขาอาจเปิดเพื่อสร้างความร่วมมือที่สร้างสรรค์ หากเขาปฏิเสธอาจมีความเป็นศัตรูที่ลึกกว่า
ในกรณีนี้ฉันคิดว่าคุณควรรอจนกว่าบทบาทของคุณจะชัดเจนขึ้น หากเพื่อนร่วมทีมของคุณไม่มีอันดับที่สูงกว่าคุณอย่างเป็นทางการเขาจะไม่รู้สึกหงุดหงิดเมื่อคุณพยายามปรับปรุงสิ่งต่างๆ เมื่อเวลาผ่านไปเขาจะต้องยอมรับมันหรือทำตัวเป็นคนโง่หากเขาพยายามแสดงให้เห็นว่าเขารู้ดีกว่า หากเขามีอันดับที่สูงกว่าคุณควรหาวิธีที่จะให้เขาเข้าใจว่านี่ไม่ใช่การอภิปราย: การสังเกตของคุณมีจุดประสงค์เพื่อปรับปรุงประสิทธิภาพการผลิตและไม่ทำลายตำแหน่งของเขาสิ่งนี้จะต้องชัดเจน 100% เมื่อบทบาทได้รับการชี้แจงหากเขายังคงไม่สามารถรับข้อเสนอแนะที่สร้างสรรค์หรือคำวิจารณ์ได้เขาก็ต้องมีปัญหากับการเห็นคุณค่าในตนเองหรืออะไรทำนองนั้น
ดังนั้นหากกลยุทธ์ทั้งหมดข้างต้นล้มเหลวและคุณรู้สึกหงุดหงิด (มาก) ฉันกลัวว่าสิ่งเดียวที่สมเหตุสมผลที่จะทำคือเก็บสิ่งของของคุณและมองหาที่ที่ดีกว่า ฉันสร้างประสบการณ์นี้เมื่อสามปีก่อนและพบ บริษัท ที่ดีกว่ามากซึ่งตอนนี้ฉันพอใจมาก บางทีนี่อาจไม่ใช่กรณีของคุณ (ฉันหวังว่าไม่ได้แน่นอน) แต่พยายามเข้าใจประเด็นนี้ด้วย
แค่ 2 เซ็นต์ของฉัน