The typical development cycle using a Version Control System (VCS) is:
Start a new branch, commit every functional version of the new feature as it is developed, send a pull request to the team and merge new features into the project.
This process allows developers to work on features in isolation (using branches), track changes incrementally, and collaborate on integrating those changes into the main codebase effectively.