DEV Community

Discussion on: git workflows - between forks, squash and rebase

ghost profile image

I do think that each project should have his own repository. Imagine that you're a developer working on the project X, and someone ask you to revise a PR in the project Y. In order to run the test suit of Y in your machine, you need to drop everything that you're working on the project X and switch your current branch.

Also, there is one point much more important: git history. If you have one repo for all projects, you will have a giant history and it may be harder to navigate in the history.

About squashing, I personally prefer not to use it. Merges is my preferred way to go, but I do no see any problems of squashing changes instead of merge.