Skip to content

Git Workflow

Jairo Antonio Melo Flórez edited this page Apr 4, 2025 · 2 revisions

We are going to follow the Gitflow Git Workflow. You can learn more about this workflow by following this link.

Branching

Main Branches:

  • main: only merge code and data that is tested (e.g., for dashboard display, or data dumps)
  • dev: staging area for reviewed contributions.

Pull requests into dev can be opened by anyone, but must be reviewed and approved before merging. @jairomelo will merge into main once the milestone is complete and everything has been tested.

Feature Branches:

Each issue that involves code or data creation must be addressed in a dedicated branch. Use the following naming convention for clarity:

issue-feature/descriptive-task

For instance, for issue #2:

data/harmonize-names

If the task includes multiple sub-tasks, it’s best to commit each sub-task separately within the same branch:

git commit -m "Add name harmonization rules"
git commit -m "Refactor baptism name normalization"
git commit -m "Clean up whitespace and punctuation handling"

Once all sub-tasks are complete, open a pull request into the dev branch for review and testing.

Commit Workflow

Before starting work, make sure your local dev branch is up to date:

git checkout dev
git pull origin dev

Assign yourself a task and create a new feature branch:

git checkout -b data/harmonize-names

Commit often with meaningful messages that describe each change:

git commit -m "Add extracted marriages from 1890-1900 for Aucara"

Pushing to GitHub after every commit is not required, but strongly recommended after completing a task or sub-task.

🤝 Collaborating on a Branch?

If a branch is being developed collaboratively:

  • Stay in communication with your teammates
  • Push only when you're confident about your changes
  • Be ready to resolve merge conflicts responsibly

💡 Branches are cheap. Don’t hesitate to create a new one if in doubt — it helps isolate and track your work more easily.

Pull Request Review

Send a PR after completing a feature or solving an issue that can be merged into the dev branch.

Add @jairomelo as reviewer. You can also include other team members if you want them to review your PR.

Indicate the milestone and the "issue" this PR completes.

✅ Pull Request Checklist

  • Code or data aligns with project structure
  • Commit messages are meaningful
  • No unresolved merge conflicts
  • Describes the completed issue(s)
  • Assigns reviewers

Merging to main

Once we reach a milestone and all commits have been reviewed and validated, the dev branch will be merged into main.

Weekly Schedule

  • Mon-Thu, team members working in their branches
  • Fri, review and merging of PRs into dev
  • Once a milestone is completed, merging dev into main

Clone this wiki locally