mirror of https://github.com/vee1e/gittuf - A security layer for Git repositories
Find a file
lakshit verma a4cbba9b15
gitinterface: placate gosec taint analysis on worktree path reads
golangci-lint (gosec G703) flags the worktree and commondir path reads as
path traversal because it cannot see across the validation functions. Each
resolved path is constrained before use: it must point into an existing
directory that is not the repository's GIT_DIR, and for linked worktrees
the .git entry must in turn reference this repository. Annotate the read
sites to reflect that these are trusted repository-local paths.

Also fix test-only lints from the CI gate: use 0600 file permissions for
temporary files and mark TestGetWorktree parallel at the top level.

Signed-off-by: lakshit verma <vermalucky2004@gmail.com>
2026-08-24 19:50:38 +05:30
.github chore(deps): bump the all group with 3 updates 2026-08-17 21:47:43 +00:00
debug
docs Readd gittuf trust inspect-root, add gittuf policy inspect 2026-07-20 18:18:18 -04:00
experimental/gittuf refactor: standardize on githash.Hash 2026-08-03 21:27:52 +01:00
internal test: add unit test for PublicKeys in internal/cmd/common 2026-08-21 07:28:49 -04:00
pkg gitinterface: placate gosec taint analysis on worktree path reads 2026-08-24 19:50:38 +05:30
.gitattributes
.gitignore
.golangci.yml
.goreleaser.yml
.test_ignore.txt ci: Enable coverage computation of internal/cmd 2026-06-26 10:52:21 -04:00
CHANGELOG.md Prepare v0.15.0 2026-06-30 12:37:43 -04:00
CITATION.bib
CONTRIBUTING.md
go.mod chore(deps): bump the all group across 1 directory with 3 updates 2026-08-18 15:49:08 +00:00
go.sum chore(deps): bump the all group across 1 directory with 3 updates 2026-08-18 15:49:08 +00:00
LICENSE
main.go
MAINTAINERS.txt governance: Move Neil to emeritus maintainer 2026-08-11 15:34:44 -04:00
Makefile
README.md docs: Add Baseline badge to README.md 2026-04-22 12:23:39 -04:00
SECURITY.md
SECURITY_INSIGHTS.yml

gittuf logo

gittuf Verification Build and Tests (CI) Coverage Status OpenSSF Best Practices OpenSSF Baseline OpenSSF Scorecard

gittuf is a platform-agnostic Git security system. The maintainers of a Git repository can use gittuf to protect the contents of a Git repository from unauthorized or malicious changes. Most significantly, gittufs policy controls and enforcement is not tied to your source control platform (SCP) or “forge”, meaning any developer can independently verify that a repositorys changes followed the expected security policies. In other words, gittuf removes the forge as a single point of trust in the software supply chain!

gittuf is an incubating project at the Open Source Security Foundation (OpenSSF) as part of the Supply Chain Integrity Working Group.

Current Status

gittuf is currently in beta. gittuf's metadata is versioned, and updates should not require reinitializing a repository's gittuf policy. We recommend trying out gittuf in addition to existing repository security mechanisms you may already be using (e.g., forge security policies). We're actively seeking feedback from users, please open an issue with any suggestions or bugs you encounter!

Installation, Get Started, Get Involved

Take a look at the get started guide to learn how to install and try gittuf out! Additionally, contributions are welcome, please refer to the contributing guide, our roadmap, and the issue tracker for ways to get involved. In addition, you can join the gittuf channel on the OpenSSF Slack and say hello!