Note: This project assumes you know at least some basic git version control.
Most of the things that are laid out are done from the terminal. It can be overwhelming and you may not understand what is going on, that is okay. If you are stuck at any point in the project, feel free to reach out to the Software Leads or anyone else for help!
If this is your first time using ROS, go through the core ROS tutorials to get yourself comfortable. It goes over installation process and all of the basics, you don't have to go through all of them. They are a good reference for ROS.
Instructions for setting up a VM on Windows and MacOS are different.
-
MacOS:
- If you have an Apple Silicon laptop, work with @alanssitis to get it set up.
- Old Intel Macs
Setting up a VM is very tedious, and can be very annoying. So best of luck!
-
Fork this repository to your GitHub account, make sure the fork is public for code review. It is your own copy of this repo!
-
Clone your fork of this repository on your machine.
-
Create and checkout to a new branch; this branch will store all the progress for your project. This can be done via the following command:
git checkout -b solution-dev
-
Initialize a ROS catkin workspace in the home directory of the VM, and name it
intro-project
.Make sure that when you runls
, you can see thebuild/
,devel/
, andsrc/
directories. -
Add and commit your initial workspace to this branch, you can name this commit
initial commit
.
git add . && git commit -m "initial commit"
- Link the solution branch to remote and push the commit with:
git push --set-upstream origin solution-dev
- You can now work on the project and have it saved in a remote repository. This allows you to work on the project in multiple devices easily and protects your project from accidents!
The core ROS tutorials uses a bit of turtlesim. We will be using more of it. If you weren't here for the first meeting where we showed a demo of what we want, contact @alanssitis.
Here is a diagram of what should be the structure of your project when it is up and running! It does not have to be exact, so feel free to use it for inspiration.
The only thing you will actually be coding is the node that will provide
instructions to the follower_turtle
and a launch file that will get it up
and running.
-
Make sure the branch
solution-dev
in your fork of the AMP repo has your project. You can rungit status
in your local machine to check if your fork is up to date. -
In this Repository's website (on github.com), create a pull request to merge your development branch into this repo's master branch. Add the GitHub users @alanssitis, and @Reschivon as reviewers for your PR.
-
Respond to any code-review comments until you have approvals from all code reviewers. Once things looks good, the software leads will give you our approval and then close the PR (your great solution can't sitting in the repo unfortunately).
-
Be proud of your great work and get ready to contribute to the AMP codebase!