End-to-End Git and Tooling Workflow (Feature Branch + CI)
Context
You are given a repository URL and asked to demonstrate a pragmatic, reproducible workflow from local setup to CI. Assume a typical backend/ML Python project, GitHub as the remote, and a Unix-like environment (macOS/Linux). If the actual stack differs, adapt the steps accordingly.
Task
Show the exact steps and commands to:
-
Prepare your IDE and SDK locally (install/check Git, Python, virtualenv; open in IDE).
-
Clone the repository.
-
Create and switch to a feature branch.
-
Initialize the project and build from scratch (install dependencies; package if applicable).
-
Add and run unit tests locally.
-
Commit with meaningful messages.
-
Push to the remote feature branch.
-
Open a pull request.
-
Configure CI to run the test suite on every push and pull request.
Include commands and any minimal files needed (e.g., YAML for CI). Call out assumptions you make.