Software Home

Welcome to ACP Robotics' software home! This page contains useful links to websites for learning programming languages, PROS and Git resources, and a link to the club's repositories. In addition, it includes short guides for setting up Git repositories for each season.

Learn Programming

  • Learn C++
  • - learncpp.com is a website that teaches all the fundamental concepts of programming in C++. We recommend reading Chapters 0-11 (excluding Chapter O).

PROS resources

ACP Robotics uses the PROS API to program our robots. Below are links to the latest release of PROS and the V5 documentation home.

  • Download PROS
  • - Select the latest release and relevant installer for OS (Recommended to download the relevant .exe if on Windows). Make sure to install the toolchain on path, the programming cable driver, V5 drivers, and the V5 Vision Sensor Utility
  • PROS V5 Documentation Home

Recommended IDEs and Editors

The following links lead to the websites of various Integrated Development Environments (IDEs) and code editors. These are applications that provide a better code editing experience than just a text editor, as they provide various features.

  • Visual Studio Code
  • - Cross-platform, lightweight, and super customizable editor, compatible with most languages via plugins
  • VSCodium
  • - Visual Studio Code, but without Microsoft branding/telemetry
  • CLion
  • - Very powerful and highly customizable C/C++ IDE - requires a student license to download for free
  • Microsoft Visual Studio
  • - Powerful IDE for creating Windows applications but can be adapted for C++ development

Git Resources

"Git is software for tracking changes in any set of files, usually used for coordinating work among programmers collaboratively developing source code during software development" (Wikipedia). It allows developers to build a history of changes they have made to the files in a program and revert changes when necessary. ACP Robotics has Git repositories for each team's code for each competitive season, the club Constitution, and this website. We currently host our repositories on GitLab.

Useful Links

Local Configuration Settings

These commands allow you to configure Git on your system to make using Git easier. Run them in whatever command line interface you prefer.

  • git config --global user.email "<email associated with GitLab account>"
  • git config --global user.name "<GitLab username>"
  • git config --global push.default simple

Local Repository Setup

ACP Robotics maintains one repository for each competitive season, with each team having their own branch. This guide shows you how to clone just your team's branch onto your computer so your code is linked to the remote GitLab repository.

  1. Open Git Bash in the parent folder of an empty folder of choice
  2. git clone <remote URL> <name of folder of choice>
    Clone the appropriate branch from the remote into the folder of choice

Remote Repository Setup

This is a guide for setting up a repository for all teams for a full competitive season. Only the Technical Specialist has to do this.


  1. In GitLab, open the ACP Robotics group and then open a team's subgroup.
  2. Create a new project in that subgroup.
  3. Name the new project <Current Year>-<Next Year> <Team Name>. For example, for the 2020-2021 Competitive season, VRC Change Up, the club code repository for that season is 2020-2021 <Blacksmiths, Jesters, Mages, Knights>
  4. Fill in the project description if you wish, but keep all other settings unchanged.
  5. Go to Settings → Repository → Protected branches , and remove main from being a protected branch.
  6. On your computer, open Git Bash or your preferred command-line processor in a empty, temporary folder
  7. git clone <remote URL> <name of temporary folder>
    Clone the newly created repository into the temporary folder
  8. cd <name of temporary folder> Enter the temporary folder.
  9. pros conductor new ./<folder name>
    Initialize a blank repository.
  10. git add .
    Tell Git to track the new files.
  11. git commit -m "Initial commit"
    Name the changes you just made.
  12. git pushpush the code to the remote repository
  13. Repeate these steps for the other teams.