การแจ้งเตือนทางอีเมลของ SVN กระทำ [ปิด]


10

คุณมีคำแนะนำสำหรับระบบแจ้งเตือนการเช็คอิน SVN แบบเทิร์นคีย์หรือไม่?

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

ฉันต้องการให้ข้อความที่ตัดตอนมา / รหัสจริงถูกแบ่งออกเป็นส่วน ๆ อย่างเรียบร้อย ไม่มีใครจะดูสิ่งเหล่านี้ (ราวกับว่าพวกเขาจะ :-) ต่อไปถ้าเป็นเพียงการถ่ายโอนข้อมูลขนาดใหญ่ที่ไม่สามารถเข้าใจได้ของรหัสเศษเล็กเศษน้อยที่เข้าใจไม่ได้ตั้งแต่ต้น โดยหลักการแล้วฉันต้องการเห็นหมายเลขการแก้ไข, สรุป, ผู้ใช้ที่ทำการคอมมิทและรายการไฟล์ที่เก็บข้อมูลที่ได้รับผลกระทบ

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

ขอบคุณทุกคนล่วงหน้ามาก!

แก้ไข: ฉันรู้ว่า Sourceforge ทำได้ค่อนข้างดี ฉันอยู่ในรายการ -dev หลายรายการที่ฉันได้รับข้อความเหล่านี้อย่างต่อเนื่อง แต่ฉันไม่สามารถใช้ Sourceforge สำหรับโครงการที่ฉันกำลังทำอยู่


คำแนะนำสำหรับทุกคนที่ต้องการติดตั้งตะขอแบบนี้: อาจเป็นการบาดเจ็บต่อกฎหมายความเป็นส่วนตัวของข้อมูล (BDSG ในเยอรมนี) ระวังที่จะใช้สิ่งนี้!

คำตอบ:


8

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

โพสต์กระทำการขอแตกต่างกันในชื่อไฟล์ขึ้นอยู่กับระบบปฏิบัติการที่คุณกำลังทำงาน คุณจะพบว่าใน/ ตะขอ / โฟลเดอร์ย่อย สำหรับลินุกซ์มันโพสต์กระทำในขณะที่บน Windows มันโพสต์กระทำของ ทั้งหมดที่คุณจะต้องทำคือการแก้ไขไฟล์ที่รันcommit_email.pl ด้านล่างเป็นตัวอย่าง post-commit.bat:

@echo on
rem POST-COMMIT HOOK

set REPOS=%1
set REV=%2

C:\Perl64\bin\perl S:\SVNRepos\hooks\commit-email.pl %REPOS% %REV% -l C:\Temp\svnlook\commit-email.log

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


สำหรับการอ้างอิงในอนาคตในระบบอื่น ๆ ที่ไม่ได้กำหนดประเภทไฟล์นามสกุล (ดีแน่นอนอย่างน้อย Linux), post-commitตะขอเป็นชื่อเพียง เพียงลบ.batส่วนขยายออกจากชื่อรุ่น Windows
David Z

เดวิดขอบคุณสำหรับความคิดเห็นของคุณ ฉันได้ปรับคำตอบแล้ว
Pauk

2

ฉันใช้SVN-Notifyซึ่งเป็นสคริปต์ Perl และควรทำงานบน Windows แม้ว่าฉันจะไม่ได้ลองเลย มันใช้ HTML :: ColorDiff เพื่อให้สีที่ดีแตกต่าง post-commit

เพื่อนร่วมงาน dev คนนี้แนะนำฉันและมันเยี่ยมมาก




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