Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Define git workflow #20

Open
javier-godoy opened this issue Mar 15, 2021 · 2 comments
Open

Define git workflow #20

javier-godoy opened this issue Mar 15, 2021 · 2 comments
Labels
discuss The issue is scheduled for internal discussion

Comments

@javier-godoy
Copy link
Member

Define a procedure for managing Pull Requests:

  • Naming convention for branches
  • How to choose a reviewer for a pull request.
  • Who merges the pull request.
  • Who deletes the old branch.
  • How the merge is performed (squash, vs merge, vs rebase and merge).
  • When is the POM version updated, if needed.
  • Etc.
@javier-godoy javier-godoy added the discuss The issue is scheduled for internal discussion label Mar 15, 2021
@mlopezFC
Copy link
Member

Good. I have some ideas:

  • Naming convention for branches: For the sake of easiness, I'm tempted to propose to use the same naming conventions as a commit message.
  • How to choose a reviewer for a pull request: Just take one from the pool?
  • Who merges the pull request: For not complicating the flow, I would propose that the reviewer should rebase and merge the PR, except that there are conflicts. If there are conflicts the original developer should be notified and they should make the proper changes and re-ask for a review if it's needed (if not they should be allowed to merge the PR).
  • Who deletes the old branch: Same as the previous item.
  • How the merge is performed (squash, vs merge, vs rebase and merge): This should be a decision of the project, I think that maybe not all of the different ways of merging are suitable for all projects
  • When is the POM version updated, if needed: this is an interesting point. One think that pops into my mind is that pom modifications should be the only modifications that could me made directly to the base branch. Of course this also, I think, should be a decision for the specific project.

@javier-godoy
Copy link
Member Author

javier-godoy commented Dec 30, 2021

Naming convention for branches: For the sake of easiness, I'm tempted to propose to use the same naming conventions as a commit message.

What about PRs that piggyback other unrelated changes? (If the changes are related, we can adopt the convention that the most dominant commit names the PR, for instance if you are committing a rebase and a feature).

Also, note that the question is about the branch name (not the PR title, although we also need to agree on it).
For instance, if the commit is build: set version to 1.0.0-SNAPSHOT should the branch be build/1.0.0-SNAPSHOT? (with the commit header reused as PR title)

How to choose a reviewer for a pull request: Just take one from the pool?

We can define the pool as code owners

When is the POM version updated, if needed: this is an interesting point. One think that pops into my mind is that pom modifications should be the only modifications that could me made directly to the base branch. Of course this also, I think, should be a decision for the specific project.

Agree. When merging features and breaking changes, the reviewer should check that the version in master is aligned with the kind of changes that the PR contains (you can merge features into a x.y.0-SNAPSHOT only , and you can merge breaking changes into a x.0.0-SNAPSHOT only)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discuss The issue is scheduled for internal discussion
Projects
None yet
Development

No branches or pull requests

2 participants