Merging is the process of reconciling two projects together. Typically in HASH, this refers to the process of merging a forked project with the original project from which it was derived.
In HASH merging projects is handled by a process of submitting, reviewing and approving merge requests.
Submitting a merge request
Merge requests are coming soon to HASH.
When creating a merge request in HASH, there are two relevant projects:
- the source, from which changes will be taken; and
- the target, into which changes will be merged.
Reviewing a merge request
Reviewing a merge request can mean two different things.
- Line-by-line diffing (automatic): a diff will be automatically produced. If no changes have occurred on the
- Human-review process (optional): as part of this review process, the diff of a proposed merge may be inspected by a human: usually a nominated maintainer of the target project.
- Human reviews of merge requests are generally recommended, but optional by default. Some projects, however, may require them before allowing merge requests to be integrated.
- A reviewer of an inbound merge request has three options: they can accept a proposed merge, reject it entirely, or request changes.
- Reviewers can comment on diffs line-by-line to provide direct feedback to would-be contributors.
Making the merge
Read more about forking and merging in our docs.
If you’ve ever used Git, or collaboration tools like GitHub or GitLab you’ll be familiar with the concept of merge requests already, although may know them as “pull requests”.