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"
m (→Set-up: Add .git suffix to repository URL) |
|||
Line 15: | Line 15: | ||
#* It is also possible to clone via https, but with a separate [https://git.eclipse.org/r/#/settings/http-password HTTP password]. | #* It is also possible to clone via https, but with a separate [https://git.eclipse.org/r/#/settings/http-password HTTP password]. | ||
# In the Git perspective, open the Repository: ''Remotes -> '' Right click on ''origin -> Gerrit Configuration... -> Finish''. | # 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 mostly divided in a set of plug-ins with different responsibility, for example: | |
− | + | ||
− | + | * ''org.eclipse.emf.henshin.model'': The [[Henshin/Transformation Meta-Model|meta-model]] | |
− | + | * ''org.eclipse.emf.henshin.diagram'': The [[Henshin/Graphical Editor|graphical editor]] | |
+ | * ''org.eclipse.emf.henshin.{edit,editor}'': The tree-based editor | ||
+ | * ''org.eclipse.emf.henshin.interpreter'': The [[Henshin/Interpreter|interpeter]] | ||
+ | <br /> | ||
+ | Import those 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 ''org.eclipse.emf.henshin.cda.cpa'', follow the [http://git.eclipse.org/c/henshin/org.eclipse.emft.henshin.git/tree/pluginsorg.eclipse.emf.henshin.multicda.cpa/README-obtain_AGG_plugin.txt instructions] to reconcile the dependency to ''AGG''. | ||
+ | * 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 == | == Pushing changes == |
Revision as of 10:20, 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 mostly divided in a set of plug-ins with different responsibility, 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
Import those 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 org.eclipse.emf.henshin.cda.cpa, follow the instructions to reconcile the dependency to AGG.
- 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.