Avoiding Mess In Development Environment

TCLethbridge edited this page Jan 17, 2017 · 2 revisions
Clone this wiki locally

Avoiding Messes in Development Environments


One of the biggest issues for new contributors to Umple is to keep their development environment 'clean' so they can build properly and create proper patches or commits. Following the tips on this page will help you learn to become a productive developer faster.

Things NOT to do

  • DO NOT move or copy directories in your git repo from one place to another. If you do this you will be inadvertently moving copying hidden files that will result in corruption. Instead use git mv to move items.

  • DO NOT add manifest files, .git files to a commit.

  • DO NOT rely on a simple 'SUCCESS' message after a build. Use Aways search the log for 'fail' and/or use the 'bumple' command and/or check the QA page to see if there are errors or failures.

Things you SHOULD do in normal situations

  • DO build on the command line if you see error messages in Eclipse.

  • DO git pull regularly and resolve conflicts.

  • DO delete unneeded working files that would litter your workspace

  • DO a full build after every git pull to make sure that you are now working with the latest version of the compiler. Use the command to rebuild 'ant -Dmyenv=local'

  • DO always work in a branch

  • DO run ant -f build.umple.xml -Dmyenv=local codegen if you change any UmpleTL templates (full build does this).

  • DO use pull requests to contribute

  • DO be extra careful to follow all steps in setting up Eclipse very precisely (be careful to ensure you have use modeling tools version of Eclipse)

Things to do to recover if your environment gets messed up

Use git to stash your work before cleaning up.

After each of the following steps, see if your environment is now clean.

  • Try restoring your compiler to the most recent official build. Copy the most recent jars from the 'releases' directory and replace those in the dist directory that you may have build with errors in them. For example copy releases/umple_1.xx.x.xxxx.jar to dist/umple.jar

    • Do a full build ant -Dmyenv=local (repeat this after any of the following steps, as needed)

    • Do git status to see if there are unneeded files that you don't want, e.g. files that have .orig from old convicts that have been resolved.

    • Do a 'git pull' to bring in any recent changes from others. You might be in a situation where this has failed. If git pull reports errors, then you need to resolve conflicts by editing the appropriate files, or deleting the file in your directory and letting git checkout get you a fresh/new file if you don't care about any changes you made to the file. Remember. Do a full build after this to see if all is clear

    • Get rid of all your changes and checkout a fresh copy of relevant files, if you don't care about changes you made.