โซลูชั่น EGit
หนึ่งคาดว่าจะสร้างหรือเปลี่ยนแปลงตัวแปรแม่แบบในโครงการพื้นที่ทำงานหรือสภาพแวดล้อมเป็นคุณสมบัติ Eclipse มาตรฐาน น่าเศร้าที่มันไม่ใช่ ยิ่งไปกว่านั้นเนื่องจากปลั๊กอิน Eclipse สามารถกำหนดตัวแปรและเทมเพลตใหม่ได้จึงควรมีปลั๊กอินที่ให้โซลูชัน หากพวกเขาพวกเขาจะต้องหายาก mmm-TemplateVariableซึ่งมีอยู่ใน Eclipse Marketplace เป็นขั้นตอนในทิศทางที่ถูกต้องสำหรับผู้ใช้ Maven ให้ความสามารถในการรวมรุ่น artifactId ฯลฯ ในเทมเพลต
โชคดีที่EGitซึ่งเป็นเครื่องมือ Eclipse สำหรับ Git นั้นมีความยืดหยุ่นในการรวมตัวแปรต่าง ๆ มากมายในเทมเพลตของโค้ด ข้อกำหนดเพียงอย่างเดียวคือโครงการของคุณใช้ Git หากคุณไม่ได้ใช้ Git แต่จริงจังกับการพัฒนาซอฟต์แวร์ตอนนี้เป็นเวลาของการเรียนรู้ ( หนังสือ Pro Git ) หากคุณถูกบังคับให้ใช้ระบบควบคุมเวอร์ชันดั้งเดิมให้ลองเปลี่ยนใจ
ขอบคุณความพยายามของharmsk , EGit 4.0 และสูงกว่ารวมถึงความสามารถในการใช้ค่าคีย์การกำหนดค่า Git ในแม่แบบ สิ่งนี้ช่วยให้การตั้งค่าแม่แบบขึ้นอยู่กับการตั้งค่าที่เก็บ (โครงการ) การตั้งค่าผู้ใช้ (บัญชี) และ / หรือการตั้งค่าทั่วโลก (เวิร์กสเตชัน)
ตัวอย่างต่อไปนี้แสดงวิธีตั้งค่า Eclipse และ Git สำหรับเวิร์กสเตชันการพัฒนาที่มีผู้ใช้หลายคนและใช้คีย์การกำหนดค่า Git ที่กำหนดเองแทน${user}
เพื่อให้มีความยืดหยุ่นมากขึ้น แม้ว่าตัวอย่างจะขึ้นอยู่กับการติดตั้ง Windows 10 ของ Eclipse Mars และ Git สำหรับ Windows ตัวอย่างนี้ใช้กับ Linux และ OSX ที่รัน Eclipse และ Git โดยใช้เครื่องมือบรรทัดคำสั่งที่เกี่ยวข้อง
เพื่อหลีกเลี่ยงความสับสนที่อาจเกิดขึ้นระหว่างuser.name
คีย์การกำหนดค่าของ Git และuser.name
คุณสมบัติระบบของ Java คีย์การกำหนดค่า Git ที่กำหนดเองuser.author
- จะถูกใช้เพื่อระบุชื่อผู้แต่งและ / หรือข้อมูลประจำตัว
การกำหนดค่าเทมเพลต
รูปแบบของตัวแปรเทมเพลต Git มีดังนี้
${<name>:git_config(<key>)}
โดยที่<name>
เป็นชื่อตัวแปรใด ๆ และ<key>
เป็นคีย์การกำหนดค่า Git ที่ควรใช้ค่า ระบุว่าการเปลี่ยนแม่แบบความคิดเห็น→ประเภทเป็น
/**
* @author ${author:git_config(user.author)}
*
* ${tags}
*/
ตอนนี้จะพยายามแก้ไขชื่อผู้แต่งจากuser.author
คีย์การกำหนดค่าของ Git หากไม่มีการกำหนดค่าเพิ่มเติมความคิดเห็นที่สร้างขึ้นใหม่จะไม่รวมชื่อหลังจาก@author
เนื่องจากยังไม่ได้กำหนด
การกำหนดค่า Git
จากบรรทัดคำสั่ง
การกำหนดค่าระบบ Git - ขั้นตอนการกำหนดค่านี้ทำการเปลี่ยนแปลงการกำหนดค่าทั่วทั้งระบบของ Git ที่ใช้กับบัญชีทั้งหมดในเวิร์กสเตชันเว้นแต่จะถูกแทนที่โดยผู้ใช้หรือการตั้งค่าที่เก็บ เนื่องจากการกำหนดค่าทั้งระบบเป็นส่วนหนึ่งของแอปพลิเคชัน Git พื้นฐาน (เช่น Git สำหรับ Windows) การเปลี่ยนแปลงจึงต้องใช้สิทธิ์ผู้ดูแลระบบ เรียกใช้ Git Bash, cmd หรือ PowerShell ในฐานะผู้ดูแลระบบ คำสั่งต่อไปนี้จะตั้งค่าผู้เขียนทั้งระบบ
git config --system user.author “SET ME IN GLOBAL(USER) or REPOSITORY(LOCAL) SETTINGS”
จุดประสงค์ของ "ผู้แต่ง" นี้คือเพื่อใช้เป็นเครื่องเตือนใจว่าควรตั้งไว้ที่อื่น สิ่งนี้มีประโยชน์อย่างยิ่งเมื่อมีการใช้บัญชีผู้ใช้ใหม่บนเวิร์กสเตชัน
เพื่อตรวจสอบการตั้งค่านี้สร้างโครงการ Java ว่างที่ใช้ Git หรือเปิดโครงการที่ใช้ Git ที่มีอยู่ สร้างคลาสและใช้แหล่งที่มา→สร้างองค์ประกอบความคิดเห็นจากเมนูบริบทALT-SHIFT-Jหรือเริ่มความคิดเห็น JavaDoc @author
แท็กผลลัพธ์ควรตามด้วยคำเตือน
การเปลี่ยนแปลงการกำหนดค่าที่เหลือสามารถทำได้โดยไม่มีสิทธิ์ผู้ดูแลระบบ
การกำหนดค่า Git Global (ผู้ใช้) - ทั่วโลกหรือผู้ใช้การกำหนดค่าเป็นการเชื่อมโยงกับผู้ใช้เฉพาะและจะแทนที่การกำหนดค่าทั่วทั้งระบบ การตั้งค่าเหล่านี้ใช้กับโครงการที่ใช้ Git ทั้งหมดเว้นแต่จะถูกแทนที่ด้วยการตั้งค่าที่เก็บ หากชื่อผู้แต่งแตกต่างกันเนื่องจากประเภทโครงการต่าง ๆ เช่นสำหรับงานการมีส่วนร่วมโอเพนซอร์สหรือส่วนตัวให้ตั้งค่าการใช้งานบ่อยที่สุดที่นี่
git config --global user.author “Mr. John Smith”
หลังจากกำหนดค่าทั่วโลกแล้วให้กลับไปที่โครงการทดสอบที่ใช้ก่อนหน้านี้และแสดงความคิดเห็นในชั้นเรียน @author
แท็กในขณะนี้ควรจะแสดงการตั้งค่าระดับโลก
การกำหนดค่า Git Repository (Local) - สุดท้ายสามารถใช้ที่เก็บข้อมูลหรือการกำหนดค่าท้องถิ่นเพื่อกำหนดค่าผู้เขียนสำหรับโครงการเฉพาะ ไม่เหมือนกับการกำหนดค่าก่อนหน้าการกำหนดค่าที่เก็บต้องทำจากภายในที่เก็บ การใช้ Git Bash, PowerShell ฯลฯ ไปยังที่เก็บของโครงการทดสอบ
git config --local user.author “smithy”
ได้รับสิ่งนี้ความคิดเห็นใหม่ในโครงการทดสอบจะใช้ชื่อผู้แต่งที่กำหนดไว้ในเครื่อง โครงการที่ใช้ Git อื่น ๆ จะยังคงใช้ชื่อผู้แต่งทั่วโลก
จากภายใน Eclipse
การกำหนดค่าการเปลี่ยนแปลงดังกล่าวยังสามารถตั้งค่าจากภายในคราสผ่านการตั้งค่า: ทีม→ Eclipse ต้องถูกเรียกใช้ในฐานะผู้ดูแลระบบเพื่อเปลี่ยนการกำหนดค่า Git ทั่วทั้งระบบ
ในผลรวม
แม้ว่าตัวอย่างนี้จะจัดการกับปัญหาที่พบบ่อยที่สุดโดยเฉพาะ แต่การเปลี่ยนแปลง${user}
วิธีนี้สามารถนำมาใช้ได้มากกว่า อย่างไรก็ตามควรใช้ความระมัดระวังไม่ให้ใช้คีย์การกำหนดค่าที่กำหนดโดย Git ยกเว้นว่ามีวัตถุประสงค์เฉพาะ