Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "Henshin/Committer Instructions"
(→Importing projects into your workspace and resolving dependencies) |
(→Importing projects into your workspace and resolving dependencies) |
||
Line 29: | Line 29: | ||
* On build errors for ''org.eclipse.emf.henshin.diagram'', use the Eclipse Marketplace (in ''Help'' menu) to install the ''Graphical Modeling Framework ooling'' feature. | * On build errors for ''org.eclipse.emf.henshin.diagram'', use the Eclipse Marketplace (in ''Help'' menu) to install the ''Graphical Modeling Framework ooling'' feature. | ||
* On build errors for ''org.eclipse.emf.henshin.giraph'', use the Eclipse Marketplace to install the ''Maven Integration for Eclipse'' feature. | * On build errors for ''org.eclipse.emf.henshin.giraph'', use the Eclipse Marketplace to install the ''Maven Integration for Eclipse'' feature. | ||
− | |||
* On build errors for the ''org.eclipse.emf.henshin.text'' projects, use the Eclipse Marketplace to install the ''Eclipse Xtext'' feature. On further build errors, trigger the Xtext generation process: navigate to ''org.eclipse.emf.henshin.text -> GenerateHenshin_text.mwe2'', right click and do ''Run As -> MWE2 Workflow''. | * On build errors for the ''org.eclipse.emf.henshin.text'' projects, use the Eclipse Marketplace to install the ''Eclipse Xtext'' feature. On further build errors, trigger the Xtext generation process: navigate to ''org.eclipse.emf.henshin.text -> GenerateHenshin_text.mwe2'', right click and do ''Run As -> MWE2 Workflow''. | ||
* On build errors for ''org.eclipse.emf.henshin.text.transformation'', use the Eclipse Marketplace to install the ''QVT Operational'' feature. Navigate to the ''Metamodel Mappings'': right click the package ''org.eclipse.emf.henshin.text.transformation'' -> ''Properties'' -> ''Metamodel Mappings''. There add mappings for ''org.eclipse.emf.henshin.model/model/henshin.ecore'' and ''org.eclipse.emf.henshin.text/model/generated/Henshin_text.ecore'': ''Add'' -> ''Browse'' -> navigate to .ecore-file. | * On build errors for ''org.eclipse.emf.henshin.text.transformation'', use the Eclipse Marketplace to install the ''QVT Operational'' feature. Navigate to the ''Metamodel Mappings'': right click the package ''org.eclipse.emf.henshin.text.transformation'' -> ''Properties'' -> ''Metamodel Mappings''. There add mappings for ''org.eclipse.emf.henshin.model/model/henshin.ecore'' and ''org.eclipse.emf.henshin.text/model/generated/Henshin_text.ecore'': ''Add'' -> ''Browse'' -> navigate to .ecore-file. |
Revision as of 11:16, 27 June 2019
Henshin uses Gerrit for handling code reviewing and merging. This implies specific processes when setting up the development environment and pushing changes.
Set-up
The following steps are for setting up the development environment based on eGit, Eclipse's git integration. Steps may vary if you don't want to use eGit.
- If you don't have one yet, generate a SSH RSA key pair: do ssh-keygen -t rsa in the git shell.
- Register your public key at https://git.eclipse.org/r/#/settings/ssh-keys
- Make sure your local git's committer e-mail address matches the one registered at https://git.eclipse.org/r/#/settings/contact
- To view the local e-mail address, do git config user.email. An empty result means the e-mail address has not been set yet.
- To change the local e-mail address, do git config --global user.email [your email address here]
- In the same manner, you can view and change your committer name using the user.name environment variable.
- To ensure correct handling of line endings when using Windows, please use the following git configs: core.autocrlf=true and core.filemode=false. If you have dirty projects due to Windows line endings, try a hard reset after setting the config.
- In Eclipse, clone the Henshin repo from ssh://committer_id@git.eclipse.org:29418/henshin/org.eclipse.emft.henshin.git
- Restarting Eclipse before this step may be required.
- It is also possible to clone via https, but with a separate HTTP password.
- In the Git perspective, open the Repository: Remotes -> Right click on origin -> Gerrit Configuration... -> Finish.
- Follow the steps outlined in the next section.
Importing projects into your workspace and resolving dependencies
Henshin's codebase is divided into plug-ins with different responsibilies, for example:
- org.eclipse.emf.henshin.model: The meta-model
- org.eclipse.emf.henshin.diagram: The graphical editor
- org.eclipse.emf.henshin.{edit,editor}: The tree-based editor
- org.eclipse.emf.henshin.interpreter: The interpeter
All plug-ins are contained in the plugins folder in the root directory of our Git repo. Import the plug-ins you want to work on as Eclipse projects into your workspace. Depending on your selection, you may encounter various build errors:
- On build errors for org.eclipse.emf.henshin.diagram, use the Eclipse Marketplace (in Help menu) to install the Graphical Modeling Framework ooling feature.
- On build errors for org.eclipse.emf.henshin.giraph, use the Eclipse Marketplace to install the Maven Integration for Eclipse feature.
- On build errors for the org.eclipse.emf.henshin.text projects, use the Eclipse Marketplace to install the Eclipse Xtext feature. On further build errors, trigger the Xtext generation process: navigate to org.eclipse.emf.henshin.text -> GenerateHenshin_text.mwe2, right click and do Run As -> MWE2 Workflow.
- On build errors for org.eclipse.emf.henshin.text.transformation, use the Eclipse Marketplace to install the QVT Operational feature. Navigate to the Metamodel Mappings: right click the package org.eclipse.emf.henshin.text.transformation -> Properties -> Metamodel Mappings. There add mappings for org.eclipse.emf.henshin.model/model/henshin.ecore and org.eclipse.emf.henshin.text/model/generated/Henshin_text.ecore: Add -> Browse -> navigate to .ecore-file.
- On build errors for org.eclipse.emf.henshin.interpreter.ui (or org.eclipse.emf.henshin.cpa or org.eclipse.emf.henshin.text.transformation.tests), use the Eclipse Marketplace to install the EMF Compare feature.
Pushing changes
After pushing a change, a corresponding entry on Gerrit has been created. Please invite (a subset of) the other committers as reviewers, doing this for all changes.