summaryrefslogtreecommitdiffstats
path: root/subcmds/diffmanifests.py
diff options
context:
space:
mode:
authorMike Frysinger <vapier@google.com>2020-02-11 23:06:29 -0500
committerMike Frysinger <vapier@google.com>2020-02-12 04:48:36 +0000
commited4f2113d22e7cc8ccc13c15ad6d5b18926d95d7 (patch)
tree6800ef22b91cf7507c79f4bc082989a33e115415 /subcmds/diffmanifests.py
parent719675bcec58c60c8c9e29071c3942c343af6235 (diff)
downloadgit-repo-ed4f2113d22e7cc8ccc13c15ad6d5b18926d95d7.tar.gz
project: make syncing a little more self-healing
We have a few files that we optionally symlink from the work tree .git/ to the .repo/projects/ path. If they don't exist when we first initialize, then we skip creating symlinks. If the files are created later on under the work tree .git/, repo gets upset. This can happen with the packed-refs file: if we don't have any packed refs initially, we don't symlink it. But if git tries to pack refs later on and creates the file, the project gets wedged. We could create an empty file initially and then symlink it, but for some files, it's not clear we want to always do that (e.g. the .git/shallow setting). Instead, lets make handling of these paths more dynamic. If they show up later on in the work tree .git/ only, we'll take care of relocating & symlinking. This also makes repo a little more robust and autorecovers incase a path goes missing in one of the dirs. Ideally we wouldn't monkey around at all here, but considering the only option we give to users currently is to blow things away with --force-sync, this seems a bit better. Bug: https://crbug.com/gerrit/12324 Change-Id: Ia6960f1896ac6d890c762d7d053684a1c6ab2c87 Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/254632 Reviewed-by: David Pursehouse <dpursehouse@collab.net> Tested-by: Mike Frysinger <vapier@google.com>
Diffstat (limited to 'subcmds/diffmanifests.py')
0 files changed, 0 insertions, 0 deletions