-
Notifications
You must be signed in to change notification settings - Fork 2
Developing HERO
To develop HERO you will need to know some useful commands to move around the filesystem and develop on all the repositories.
For devloping our robots, we use Git version control. There are many tutorials in the internet on how to use Git and how it works.
If installed correctly, all the repositories from tue-robotics
will be located at: ~/ros/noetic/system/src/<repo>
To quickly go to a repository, you can run the command roscd
:
roscd <repo> # Example: roscd robot_skills
# This will bring you to ~/ros/noetic/system/src/robot_skills
As you will probably create and work with many branches possibly in many repositories you have to checkout (change to) those branches individually for every repository that needs it. For this
You will also have tue-custom commands to keep eveything up to date and managing the branches, here is a quick overview:
tue-get update # Updates all the repositories
tue-make # Builds and installs all the packages
tue-status # Useful to see what branches is each repository using, or to see local changes
tue-checkout <branch> # Checkout all repositories to <branch>
When working with HERO, you first want to create a branch to push your changes to.
Try to follow this branch naming pattern to keep eveything organized:
feat # New feature
fix # Bug fix or improving code
challenge # For specific challenges
rwcYYYY # Branches used for robocup (YYYY is the year)
So, for example you can have a branch named feat/grasping-cutlery
.
If you create a PR early, make sure to mark it as a Draft.
When a branch is ready to be merged, this is a general checklist you can follow to help you make sure you have developed everything correctly:
- CI/CD passes
- Code follows PEP-8 standard (you can use tools like black)
- Has type hinting and function docstrings
- PR description/commits are descriptive
- Mentions other PR's that also have to be merged along this one