summaryrefslogtreecommitdiffstats
path: root/project.py
diff options
context:
space:
mode:
authorJosip Sokcevic <sokcevic@chromium.org>2024-03-20 21:48:34 +0000
committerLUCI <gerrit-scoped@luci-project-accounts.iam.gserviceaccount.com>2024-03-20 22:09:14 +0000
commit73356f1d5ccbebf5a33e5e9aa1ba06c5f5437fed (patch)
tree15128efb3204b0db4bb1a8959747da0d1ca86fd3 /project.py
parent09fc214a7966a982ab837aedd010e3732c5ed7d1 (diff)
downloadgit-repo-73356f1d5ccbebf5a33e5e9aa1ba06c5f5437fed.tar.gz
project: Check if dotgit exists w/out symlink checkv2.45
os.path.exists returns false on a broken symlink. This is not what repo needs when checking if a project is setup properly. For example, if src/foo/.git can't be resolved, repo tries to create symlink and that results in FileExistsError. Use lexists which returns True even if symlink is broken. That will force path where repo checks where symlink is pointing to and will fix it to the correct location. Bug: b/281746795 Change-Id: Id3f7dc3a3cb6499d02ce7335eca992ddc7deb645 Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/415197 Tested-by: Josip Sokcevic <sokcevic@google.com> Commit-Queue: Josip Sokcevic <sokcevic@google.com> Reviewed-by: George Engelbrecht <engeg@google.com> Reviewed-by: Greg Edelston <gredelston@google.com>
Diffstat (limited to 'project.py')
-rw-r--r--project.py2
1 files changed, 1 insertions, 1 deletions
diff --git a/project.py b/project.py
index 7d6b6cea..1f5e4c35 100644
--- a/project.py
+++ b/project.py
@@ -3341,7 +3341,7 @@ class Project:
3341 if not platform_utils.islink(dotgit) and platform_utils.isdir(dotgit): 3341 if not platform_utils.islink(dotgit) and platform_utils.isdir(dotgit):
3342 self._MigrateOldWorkTreeGitDir(dotgit, project=self.name) 3342 self._MigrateOldWorkTreeGitDir(dotgit, project=self.name)
3343 3343
3344 init_dotgit = not os.path.exists(dotgit) 3344 init_dotgit = not os.path.lexists(dotgit)
3345 if self.use_git_worktrees: 3345 if self.use_git_worktrees:
3346 if init_dotgit: 3346 if init_dotgit:
3347 self._InitGitWorktree() 3347 self._InitGitWorktree()