I'm working with a team on a senior-year project that will combine Python and SQL. We have about five or six months to build a basic prototype, and if it turns out well, we may continue developing it afterward.
Since we live in different places and have different schedules, we need a reliable way to share and update the project files without accidentally overwriting one another's work. We were hoping for something similar to a shared document where everyone could access the code, but we haven't found the right approach yet.
We also considered creating one shared account and having everyone log in to the same development environment. What tools or workflow would you recommend for collaborating effectively on this kind of project?
4 Answers
A shared live folder or one account in the same editor usually creates confusion: changes can conflict, and it becomes difficult to know who changed what. Git is the standard approach because each teammate has a local copy and can choose when to bring in other people’s updates. You can still use a live coding tool for occasional pair-programming sessions, but it shouldn’t replace version control for the whole project.
The key thing to learn is version control, especially Git. A shared repository lets everyone download the project, make changes locally, and upload those changes for the rest of the team. It’s worth learning the basic workflow before the project gets too large.
Git and a repository-hosting service are designed specifically for this kind of collaboration. Set up a clear main branch, use separate branches for new features, and regularly pull everyone’s updates so merge conflicts stay manageable.
Use Git with a hosting service such as GitHub or GitLab. Each person can work on their own branch, then merge changes into the main project after reviewing them. That prevents people from overwriting one another’s work and gives you a history of every change.

That makes sense. We’ll look into Git branches and use a shared repository rather than having everyone edit the same files directly.