Skip to main content

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.

Jump to: navigation, search

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''.
# Check out the plug-ins you want to work on.
+
# Follow the steps outlined in the next section.
#* On build errors for  ''org.eclipse.emf.henshin.diagram'', use the Eclipse Marketplace (in ''Help'' menu) to install the ''Graphical Modeling Framework Tooling'' feature.
+
 
#* On build errors for  ''org.eclipse.emf.henshin.giraph'', use the Eclipse Marketplace  to install the ''Maven Integration for Eclipse'' feature.
+
== Importing projects into your workspace and resolving dependencies ==
#* On  build errors for ''org.eclipse.emf.henshin.cpa'', follow the [http://git.eclipse.org/c/henshin/org.eclipse.emft.henshin.git/tree/plugins/org.eclipse.emf.henshin.multicda.cpa/README-obtain_AGG_plugin.txt instructions] to reconcile the dependency to ''AGG''.
+
Henshin's codebase is mostly divided in a set of plug-ins with different responsibility, for example:
#* 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.
+
* ''org.eclipse.emf.henshin.model'': The [[Henshin/Transformation Meta-Model|meta-model]]
#* 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.
+
* ''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.

  1. If you don't have one yet, generate a SSH RSA key pair: do ssh-keygen -t rsa in the git shell.
  2. Register your public key at https://git.eclipse.org/r/#/settings/ssh-keys
  3. 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.
  4. 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.
  5. 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.
  6. In the Git perspective, open the Repository: Remotes -> Right click on origin -> Gerrit Configuration... -> Finish.
  7. 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.

Back to the top