dd-git-merge

Enforces merge-only Git workflows with daily merge rules, push procedures, and commit conventions.

Updated Jun 11, 2026
One-click install
npx skills add https://github.com/marcocpt/trae_skills --skill dd-git-merge-marcocpt
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: dd-git-merge
Source: https://github.com/marcocpt/trae_skills/tree/main/dd-git-merge
Command: npx skills add https://github.com/marcocpt/trae_skills --skill dd-git-merge-marcocpt

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Long-lived feature branches accumulate conflicts and drift from the mainline, and inconsistent commit messages make history hard to audit. This Skill standardizes how branches are merged, pushed, and committed so develop stays clean and up to date. ## Core Features & Use Cases - Merge-only principle with hybrid modes: Enforces --no-ff for feature merges and restricts --ff-only to pure upstream syncs, banning rebase entirely. - Daily mandatory merge and push flow: Defines when and how to pull upstream changes and merge verified work back into develop, including conditions that block merging. - 5-step merge pipeline with commit conventions: Covers merge, merge-tree precheck, build/tests/lint, AI self-check via pre-merge-check.sh, and PR merge, plus a strict commit type list (feat, fix, refactor, test, docs, style, chore) with PublicFile tagging. - Use Case: An AI coding agent finishes a bug fix on a feature branch, runs the pre-merge self-check, merges origin/develop with --no-ff, verifies tests pass, then merges back to develop with a compliant commit message. ## Quick Start Ask the AI to merge the current feature branch into develop following the merge-only workflow and commit conventions.

Frequently Asked Questions about dd-git-merge

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I merge a feature branch into develop without rebase?

Use git merge --no-ff origin/develop to sync upstream, run tests and the pre-merge check, then merge into develop with git merge --no-ff <branch>. The --no-ff flag preserves branch history with an explicit merge commit.

When should I use git merge --ff-only versus --no-ff?

Use --ff-only only for pure upstream syncs when the branch has no independent commits, producing linear history. Feature merges into develop must always use --no-ff to preserve branch boundaries; using --ff-only for feature merges is prohibited.

What is the correct Git commit message format for conventional commits?

Use a type prefix such as feat, fix, refactor, test, docs, style, or chore, followed by a concise imperative subject under 50 characters. Each commit does one thing, and changes to public files must include a PublicFile: <path> tag.

Why should feature branches merge into develop every day?

Daily merging forces completed, verified work back into the mainline instead of letting branches drift. Merge conflicts grow exponentially with branch lifetime, so daily merges keep integration costs low and prevent stale branches.

When should I not push and merge my branch into develop?

Do not merge when the feature is incomplete, tests or SwiftLint strict checks fail, or documentation is not synchronized with behavior changes. In those cases only pull upstream changes to stay in sync without polluting develop.