Model governance

Martenweave vs dbt and Custom Git Repositories: Transformation Code Is Not a Migration Model

By Dzmitryi Kharlanau · Published · 4 min read

Many data teams already version model-related work in Git. dbt projects contain SQL models, YAML properties, tests, and a dependency graph. Internal repositories conta…

Contents

Many data teams already version model-related work in Git. dbt projects contain SQL models, YAML properties, tests, and a dependency graph. Internal repositories contain mapping scripts, CSV files, diagrams, and documentation. That is often a strong foundation.

The question is not whether Git is enough. It is whether the repository has a canonical model, deterministic relationship validation, and a controlled way to turn delivery evidence into a reviewed change.

What dbt does better

dbt is an analytics-engineering and data-transformation tool. Its models, tests, documentation, semantic layer, and lineage help teams build and understand transformed analytical data. The dbt documentation describes a Semantic Layer that lets teams define metrics over existing models and have joins handled consistently; its catalog helps users discover dbt resources.

Choose dbt when the work is warehouse transformation, analytics engineering, model execution, testing, metric definition, and the lineage of those transformations. Martenweave does not compile or execute SQL transformations, orchestrate data builds, manage a warehouse, or replace dbt’s analytics workflow.

What a custom Git repository can already achieve

Git is an excellent change-control layer. A carefully maintained repository can provide version history, pull-request review, code ownership, templates, automated checks, and transparent artefacts. Some teams should continue with an internal repository rather than introduce a separate product.

The risk is not Git itself. The risk is an unstructured collection of files where the relationship between a business attribute, SAP context, source column, target field, mapping rule, evidence gap, decision, and approval can only be reconstructed by reading multiple documents. Git records that files changed; it does not automatically define or validate the model inside them.

Where Martenweave adds a layer

Martenweave uses Git-friendly canonical Markdown and YAML files, but gives the files a registered object model and validation pipeline. A mapping is not merely a row in a workbook or a comment in SQL: it can be connected to field endpoints, an attribute, an entity context, value mappings, issues, decisions, and a reviewable PatchProposal. Generated indexes, lineage edges, and reports are derived from that canonical model.

For a SAP migration, this matters because the governing question is often semantic rather than executable. A dbt graph can show that a customer staging model feeds a reporting model. It may not express that the source’s CUST_GRP field maps to a sales-area-dependent SAP attribute, that the source extract lacks the required column in one country, or that an exception needs approval before the next mock load.

Direct competitor, adjacent tool, or complement?

dbt is an adjacent and often complementary tool. It is a direct alternative only when the team’s actual need is data-transformation documentation and testing, not a migration or MDM model-evidence layer.

A custom Git repository is a viable alternative when it already has the model structure, tests, review discipline, and maintainers required for the programme. Martenweave is an accelerator for teams that want those mechanics in a reusable open-source Core rather than build and operate them entirely from scratch.

Use a simple boundary:

Decision framework

Keep the existing Git repository if its model semantics are clear, validation is reliable, and the team can trace a change without manual archaeology.

Use dbt where the business need is analytical transformation and metric governance.

Add Martenweave when the delivery issue is an independent model of business meaning, SAP contexts, mappings, evidence gaps, decisions, and controlled model changes. The Core can be extended, but that extension should be justified by a recurring delivery problem, not by a desire to replace every repository with one tool.

Sources and notes

Martenweave is independent and is not affiliated with, endorsed by, or a replacement for dbt. Product names are trademarks of their respective owners.

Primary sources