LWN: Comments on "Securing Git repositories with gittuf" https://lwn.net/Articles/972467/ This is a special feed containing comments posted to the individual LWN article titled "Securing Git repositories with gittuf". en-us Thu, 02 Oct 2025 15:17:06 +0000 Thu, 02 Oct 2025 15:17:06 +0000 https://www.rssboard.org/rss-specification lwn@lwn.net Securing Git repositories with gittuf https://lwn.net/Articles/973703/ https://lwn.net/Articles/973703/ mathstuf <div class="FormattedComment"> <span class="QuotedText">&gt; Even "just have somebody trusted sign off that a CI run happened" would be a vast improvement over the current situation. You can't store a local record of the things that Github runs or its artifacts (at least, not in an accessible and automated way), and Github's UX appears to drop this information after some time.</span><br> <p> The merge commit message is a perfect place to capture information like CI results (e.g., `Tested-by` means everything passed, `Acked-by` could mean "builds worked, but tests failed") and who reviewed it (since tagging individual patches would invalidate hashes and CI results). You can see an example here: <a href="https://gitlab.kitware.com/vtk/vtk/-/commit/7f0be0798c32b0496102e10204cc7d4eca2848bc">https://gitlab.kitware.com/vtk/vtk/-/commit/7f0be0798c32b...</a><br> </div> Tue, 14 May 2024 22:56:15 +0000 Securing Git repositories with gittuf https://lwn.net/Articles/973395/ https://lwn.net/Articles/973395/ apoelstra <div class="FormattedComment"> <span class="QuotedText">&gt;Signing is the obvious way to record the result but how do you actually guarantee that anything actually ran locally?</span><br> <p> Even "just have somebody trusted sign off that a CI run happened" would be a vast improvement over the current situation. You can't store a local record of the things that Github runs or its artifacts (at least, not in an accessible and automated way), and Github's UX appears to drop this information after some time. Meanwhile for the tests that I run locally, I record these using some ad-hoc git-notes based thing that is hard to share with others and makes it very easy to lose track of records because I didn't take the time to create a principled append-only searchable global log out of it.<br> <p> The result is that, when I receive a bug report about a branch that hasn't been updated in months (or years), and when I go to build it, I have no idea what compiler version or environment it was tested on, what suite of tests were run and at what time and by whom, etc etc.<br> <p> Same for signoffs on merges. Here Github works pretty well, at least if you have some local mapping from commit IDs to pull request numbers, but it still makes me nervous that I need to trust Github to store a record of ACKs forever. (Maybe gerrit is sufficient to address this issue? I don't know because the value proposition hasn't been big enough for me to learn it it, let alone encourage my team members to follow.)<br> <p> So without even touching on the trust/security aspect of things, this project is something I'm very interested in. Just to have an audit log about what happened to my project and when (at least, according to me or other people I trust).<br> </div> Sun, 12 May 2024 21:39:38 +0000 Securing Git repositories with gittuf https://lwn.net/Articles/973240/ https://lwn.net/Articles/973240/ LtWorf <div class="FormattedComment"> Lower entry barriers might mean 100x more jia tan :D<br> </div> Fri, 10 May 2024 17:02:31 +0000 Securing Git repositories with gittuf https://lwn.net/Articles/973237/ https://lwn.net/Articles/973237/ mb <div class="FormattedComment"> Yes. That is no contradiction.<br> <p> No amount of code signing, authorization process, signing-offs and higher entry barriers are going to prevent another Jia Tan.<br> That is basically impossible to prevent.<br> <p> However, more people and *lower* entry barriers significantly increase the chance of *detecting* another Jia Tan.<br> Scaring people away with useless processes is going to make us more vulnerable in the end.<br> </div> Fri, 10 May 2024 16:34:29 +0000 Securing Git repositories with gittuf https://lwn.net/Articles/973235/ https://lwn.net/Articles/973235/ Wol <div class="FormattedComment"> <span class="QuotedText">&gt; Or they want me to have branch protection and code revisions. Cool… except who should review my code? Most other contributors just changed a few lines here and there. The suggestion to fix this is "find more people".</span><br> <p> You mean people like Jia Tan ... &lt;snigger&gt;<br> <p> Cheers,<br> Wol<br> </div> Fri, 10 May 2024 16:12:10 +0000 Securing Git repositories with gittuf https://lwn.net/Articles/973217/ https://lwn.net/Articles/973217/ LtWorf <div class="FormattedComment"> Well I think the entire point of OpenSSF is to shove compliance to some sort of rules down the throats of developers.<br> <p> I've actually tried to implement their scorecard thing for my project "typedload".<br> <p> For example, you need to pin dependencies, because a new version might introduce vulnerabilities… but you also need to update the pin all the time for old security vulnerabilities. Also, if you never read the code of the dependencies, what is the point of pinning to a specific version? Nobody has vetted it any more than a newer version (I always use latest mypy in the CI).<br> <p> They want me to have a "dependency update tool"… the project only depends on python, and certainly doesn't vendor it.<br> <p> Or they want me to have branch protection and code revisions. Cool… except who should review my code? Most other contributors just changed a few lines here and there. The suggestion to fix this is "find more people".<br> <p> I work for a security company and we have fewer requirements than that :D<br> <p> Anyway, this thing being sponsored by OpenSSF makes me think their goal is to enforce these rules onto open source, so that eventually proprietary stuff will only run the secure™ (is on github, runs their scorecard) open source software and will automatically be compliant without extra vetting of the dependencies.<br> <p> The hilarious thing is that you can write an "rm -rf /" in your code and still be 100% compliant with everything. Because the idea that you can evaluate security of a project just basing on some abstract rules, without actually reading the code is wrong to begin with.<br> </div> Fri, 10 May 2024 13:29:37 +0000 Securing Git repositories with gittuf https://lwn.net/Articles/973175/ https://lwn.net/Articles/973175/ weal <div class="FormattedComment"> Just imagine being a beginner and trying to learn git with all this extra stuff on top. It reminds me of jobs where I have had to spend a week doing some esoteric configuration just to get setup to get started. You just know the project is going to be a frustrating experience.<br> <p> This sounds like a typical "make work" project to keep us all busy. To make us into "experts" and "specialists" in this New Thing.<br> <p> I can understand that in certain situations "compliance" (whatever that means) is worth it, and in those cases they can hire someone for that purpose and use tools that stay out of my way as a dev. The vast majority of projects will be harmed by tools like this for having "too many cooks in the kitchen".<br> </div> Fri, 10 May 2024 11:24:02 +0000 Securing Git repositories with gittuf https://lwn.net/Articles/973165/ https://lwn.net/Articles/973165/ taladar <div class="FormattedComment"> Honestly, this all sounds quite vague in how it plans to actually achieve any of those assurances. Signing is the obvious way to record the result but how do you actually guarantee that anything actually ran locally?<br> <p> I also really don't see anything close to 100% of the dependencies out there use this kind of workflow with rules consistent enough to be useful at the point where the project using a couple of dozen of them wants to present some guarantees of their own.<br> </div> Fri, 10 May 2024 07:58:46 +0000 Securing Git repositories with gittuf https://lwn.net/Articles/973161/ https://lwn.net/Articles/973161/ LtWorf <div class="FormattedComment"> I'm a firm believer that if anyone asks for the boring compliance stuff that makes coding miserable and that we must use at our normal jobs, they must be prepared to at least donate relevant amount of money.<br> <p> I personally intend to shut down requests to enforce this stuff (should I receive any) unless they come with sponsoring, and I invite everyone else to do the same.<br> </div> Fri, 10 May 2024 07:12:42 +0000 Securing Git repositories with gittuf https://lwn.net/Articles/973123/ https://lwn.net/Articles/973123/ Heretic_Blacksheep <div class="FormattedComment"> It's intended to be a first step in enforcing more fine grained logistical policies that big projects may wish to use for accountability &amp; attestation along with partially automating the review process of commits. It's for larger projects needing team access controls. Ex: Bob from the UI team may not have legit access to the back end code folders, so why did he just push a 4 line function call to a new library? Should be a red flag for review or an automatic reject for insufficient access rights.<br> <p> This wouldn't have solved the intentional XZ social engineering issue, and won't solve the problem of having the manpower to review new commits. But, it should give a bit more logistical control versus vanilla git it seems.<br> <p> The manpower issue is only going to be solved with better (and free/cheaper/easier-to-use) behavior modeling tools. There's just not enough skilled man hours on this planet to review every bit of code for the near infinite varieties of malicious behavior or just plain old "weird machines".<br> </div> Thu, 09 May 2024 20:41:07 +0000 Signed pushes https://lwn.net/Articles/973017/ https://lwn.net/Articles/973017/ jnareb <div class="FormattedComment"> <span class="QuotedText">&gt; Another feature that Lynch mentioned for the future is signed pushes, but he said that "is not the top priority" because it is not yet supported by any of the Git forges.</span><br> <p> Though signed pushes are not supported by any (major?) Git forge, they are supported by kernel.org via **Kernel.org Transparency Log Monitor** <a href="https://tlog.linderud.dev/">https://tlog.linderud.dev/</a><br> </div> Thu, 09 May 2024 13:25:45 +0000 Securing Git repositories with gittuf https://lwn.net/Articles/973006/ https://lwn.net/Articles/973006/ k3ninho <div class="FormattedComment"> <span class="QuotedText">&gt;[a question in Q&amp;A] wondered whether gittuf could allow developers to run CI tests locally and just submit proof that they had been run to save on costs</span><br> <p> Don't just do it to save on costs running tests at all, do it to save you from failing pipelines when 'trust me this works locally' doesn't work in the CI/CD pipelines. Remember the principle behind 'did you test your changes locally?' -- this attestation would shorten some feedback loops.<br> <p> K3n.<br> </div> Thu, 09 May 2024 09:35:43 +0000 Securing Git repositories with gittuf https://lwn.net/Articles/972999/ https://lwn.net/Articles/972999/ tzafrir <div class="FormattedComment"> I'm not sure I understand the model and how it works with distributed development.<br> <p> What would it take to fork (hard-fork) a project?<br> </div> Thu, 09 May 2024 06:16:39 +0000 Securing Git repositories with gittuf https://lwn.net/Articles/972993/ https://lwn.net/Articles/972993/ pj Glad to see someone's trying to drag more functionality that's currently only in forges into the repo. I'd love to see git gain some of the functionality that fossil has, like a standard issue tracker and wiki. Maybe even a review API/tool that would make a 'reviewed-by' tag a bit more well-defined. Thu, 09 May 2024 01:39:43 +0000