diff options
author | Emily Shaffer <nasamuffin@google.com> | 2023-09-15 13:26:38 -0700 |
---|---|---|
committer | LUCI <gerrit-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2023-11-09 22:13:17 +0000 |
commit | 8a6d1724d9d9f4598d15338be9723542ba79467e (patch) | |
tree | 952ef4c542e5ef711bb675e6d9c8949efa30ae6f /manifest_xml.py | |
parent | 3652b497bbbd6227b2cb84bb61a0fe8d21ba20d6 (diff) | |
download | git-repo-8a6d1724d9d9f4598d15338be9723542ba79467e.tar.gz |
git_superproject: tell git that superproject is bare
The superproject is initialized as a bare repo in Superproject:_Init().
That means that later operations must treat it as a bare repository,
specifying the gitdir and setting 'bare' appropriately when launching
GitCommand()s. It's also OK not to specify cwd here because GitCommand()
will drop cwd if bare == True anyways.
With this change, it's possible to run `repo init` and `repo sync` with the
Git config 'safe.bareRepository' set to 'explicit'. This config strengthens
Git's security posture against embedded bare repository attacks like
https://github.com/justinsteven/advisories/blob/main/2022_git_buried_bare_repos_and_fsmonitor_various_abuses.md.
Bug: b/227257481
Change-Id: I954a64c6883d2ca2af9c603e7076fd83b52584e9
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/389794
Reviewed-by: Mike Frysinger <vapier@google.com>
Tested-by: Jason R. Coombs <jaraco@google.com>
Tested-by: Emily Shaffer <emilyshaffer@google.com>
Reviewed-by: Emily Shaffer <emilyshaffer@google.com>
Commit-Queue: Jason R. Coombs <jaraco@google.com>
Diffstat (limited to 'manifest_xml.py')
0 files changed, 0 insertions, 0 deletions