Should a feature branch of forked repository ever be merged to origin main?
Let's consider, 3 people are working in a project and they are using git
.
Can the project repository be in any one of their github accounts. Or is it more convenient to host the remote project repository in a new account?
Now, one of them will work on a feature. So, he will fork
the repository, clone it, git
, create feature branch, make commits in the feature branch and then git push origin feature
. Then, create a merge request from github site
Then, what should he do?
Should he merge origin feature
branch to origin main
? Or delete the feature branch
? Or keep it untouched?
Should any commit be made in the feature branch after the merge request is accepted and closed.
At a more broad level, the question is:
What does workflow look like(what are the conventional steps) when using git in a team project? What is a complete Gitflow cycle?
Note: Please feel free to edit the question, if u think it is not framed correctly. Also help, if what steps I have enumerated is wrong or some pieces are missing.
Solution 1:
With Git (and even more with Git + Github) you have a lot of possible workflows for team-based developments, you have to define applicable and usable for your team: everybody have own habits and mileage may|have vary
You can:
- Use single repo or forks
- Use personal repo and add collaborators to it or have "organization" + "org. repo" + "org. members"
- Use PR (pure GitHub specific) or enable just merge branches
- Use GitFlow or GitHubFlow or Trunk-based develpment or ...