EGit Solution
Можна очікувати, що створення або зміна змінних шаблонів на основі проекту, робочої області або середовища є стандартною функцією Eclipse. На жаль, це не так. Тим більше, що враховуючи, що плагіни Eclipse можуть визначати нові змінні та шаблони, там повинні бути плагіни, що пропонують рішення. Якщо вони є, їх треба важко знайти. mmm-TemplateVariable , який доступний на ринку Eclipse Market, є кроком у правильному напрямку для користувачів Maven, що дає можливість включати версію, artifactId тощо у шаблони.
На щастя, EGit , який є інструментом Eclipse для Git, забезпечує дуже гнучкі засоби для включення в шаблони коду багатьох різних змінних. Єдина вимога - ваш проект використовує Git. Якщо ви не використовуєте Git, але серйозно ставитесь до розробки програмного забезпечення, тепер саме час вчитися ( Pro Git book ). Якщо ви змушені використовувати застарілу систему контролю версій, спробуйте змінити свою думку.
Завдяки зусиллям 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-конфігурація . Eclipse потрібно запускати як адміністратор, щоб змінити загальносистемні конфігурації Git.
В результаті
Хоча цей приклад стосувався саме найпоширенішого питання, пов'язаного із зміною ${user}, цей підхід може бути використаний для більше. Однак слід бути обережними, щоб не використовувати конфігураційні ключі, визначені Git, якщо це не призначено спеціально.