EGit-Lösung
Es ist zu erwarten, dass das Erstellen oder Ändern von Vorlagenvariablen auf Projekt-, Arbeitsbereichs- oder Umgebungsbasis eine Standardfunktion von Eclipse ist. Leider ist es nicht. Da Eclipse-Plugins neue Variablen und Vorlagen definieren können, sollte es Plugins geben, die eine Lösung bieten. Wenn ja, müssen sie schwer zu finden sein. mmm-TemplateVariable , das auf dem Eclipse Marketplace verfügbar ist, ist für Maven-Benutzer ein Schritt in die richtige Richtung und bietet die Möglichkeit, Version, Artefakt-ID usw. in Vorlagen aufzunehmen.
Glücklicherweise bietet EGit , ein Eclipse-Tool für Git, sehr flexible Möglichkeiten, um viele verschiedene Variablen in Codevorlagen aufzunehmen. Die einzige Voraussetzung ist, dass Ihr Projekt Git verwendet. Wenn Sie Git nicht verwenden, aber die Softwareentwicklung ernst nehmen, ist es jetzt an der Zeit zu lernen ( Pro Git-Buch ). Wenn Sie gezwungen sind, ein älteres Versionskontrollsystem zu verwenden, versuchen Sie, einige Meinungen zu ändern.
Dank der Bemühungen von harmsk bietet EGit 4.0 und höher die Möglichkeit, Git-Konfigurationsschlüsselwerte in Vorlagen zu verwenden. Auf diese Weise können Vorlagenwerte basierend auf Repository-Einstellungen (Projekt), Benutzereinstellungen (Konto) und / oder globalen Einstellungen (Workstation) festgelegt werden.
Das folgende Beispiel zeigt, wie Sie Eclipse und Git für eine Entwicklungsarbeitsstation für mehrere Benutzer einrichten und stattdessen einen benutzerdefinierten Git-Konfigurationsschlüssel verwenden ${user}
, um mehr Flexibilität zu bieten. Obwohl das Beispiel auf einer Windows 10-Installation von Eclipse Mars und Git für Windows basiert, gilt das Beispiel für Linux und OSX, auf denen Eclipse und Git mit ihren jeweiligen Befehlszeilentools ausgeführt werden.
Um mögliche Verwechslungen zwischen dem user.name
Konfigurationsschlüssel von Git und der user.name
Systemeigenschaft von Java zu vermeiden , wird ein benutzerdefinierter Git-Konfigurationsschlüssel - user.author
- verwendet, um den Namen und / oder die Anmeldeinformationen eines Autors anzugeben.
Vorlagen konfigurieren
Das Format einer Git-Vorlagenvariablen lautet wie folgt
${<name>:git_config(<key>)}
Dabei <name>
steht ein beliebiger Variablenname und <key>
der Git-Konfigurationsschlüssel, dessen Wert verwendet werden soll. Vor diesem Hintergrund ändern Sie die Vorlage Kommentare → Typen in
/**
* @author ${author:git_config(user.author)}
*
* ${tags}
*/
wird nun versuchen, den Namen des Autors aus dem user.author
Konfigurationsschlüssel von Git aufzulösen . Ohne weitere Konfiguration enthalten neu erstellte Kommentare keinen Namen danach @author
, da noch keiner definiert wurde.
Git konfigurieren
Über die Befehlszeile
Git-Systemkonfiguration - In diesem Konfigurationsschritt werden Änderungen an der systemweiten Konfiguration von Git für alle Konten auf der Workstation vorgenommen, sofern sie nicht durch Benutzer- oder Repository-Einstellungen überschrieben werden. Da systemweite Konfigurationen Teil der zugrunde liegenden Git-Anwendung sind (z. B. Git für Windows), erfordern Änderungen Administratorrechte. Führen Sie Git Bash, cmd oder PowerShell als Administrator aus. Der folgende Befehl legt den systemweiten Autor fest.
git config --system user.author “SET ME IN GLOBAL(USER) or REPOSITORY(LOCAL) SETTINGS”
Der Zweck dieses „Autors“ besteht darin, daran zu erinnern, dass er an anderer Stelle festgelegt werden sollte. Dies ist besonders nützlich, wenn neue Benutzerkonten auf der Workstation verwendet werden.
Um diese Einstellung zu überprüfen, erstellen Sie ein leeres Java-Projekt, das Git verwendet, oder öffnen Sie ein vorhandenes Git-basiertes Projekt. Erstellen Sie eine Klasse und verwenden Sie im Kontextmenü ALT-SHIFT-J Quelle → Elementkommentar generieren oder starten Sie einen JavaDoc-Kommentar. Dem resultierenden @author
Tag sollte die Warnung folgen.
Die verbleibenden Konfigurationsänderungen können ohne Administratorrechte durchgeführt werden.
Globale (Benutzer-) Konfiguration von Git - Globale oder Benutzerkonfigurationen sind diejenigen, die einem bestimmten Benutzer zugeordnet sind und systemweite Konfigurationen überschreiben. Diese Einstellungen gelten für alle Git-basierten Projekte, sofern sie nicht durch Repository-Einstellungen überschrieben werden. Wenn der Autorenname aufgrund verschiedener Projekttypen unterschiedlich ist, z. B. für Arbeit, Open Source-Beiträge oder persönliche Beiträge, legen Sie den hier am häufigsten verwendeten Namen fest.
git config --global user.author “Mr. John Smith”
Kehren Sie nach der Konfiguration des globalen Werts zum früh verwendeten Testprojekt zurück und wenden Sie einen Klassenkommentar an. Das @author
Tag sollte jetzt die globale Einstellung anzeigen.
Git-Repository (lokal) -Konfiguration - Schließlich kann ein Repository oder eine lokale Konfiguration verwendet werden, um einen Autor für ein bestimmtes Projekt zu konfigurieren. Im Gegensatz zu den vorherigen Konfigurationen muss eine Repository-Konfiguration innerhalb des Repositorys vorgenommen werden. Navigieren Sie mit Git Bash, PowerShell usw. in das Repository des Testprojekts.
git config --local user.author “smithy”
Vor diesem Hintergrund verwenden neue Kommentare im Testprojekt den lokal definierten Autorennamen. Andere Git-basierte Projekte verwenden weiterhin den globalen Autorennamen.
Aus Eclipse heraus
Die obigen Konfigurationsänderungen können auch in Eclipse über die Einstellungen: Team → Git-Konfiguration festgelegt werden . Eclipse muss als Administrator ausgeführt werden, um systemweite Git-Konfigurationen zu ändern.
In Summe
Obwohl sich dieses Beispiel speziell mit dem häufigsten Problem, dem Ändern ${user}
, befasste , kann dieser Ansatz für mehr verwendet werden. Es sollte jedoch darauf geachtet werden, keine von Git definierten Konfigurationsschlüssel zu verwenden, es sei denn, dies ist ausdrücklich vorgesehen.