diff options
Diffstat (limited to 'project.py')
| -rw-r--r-- | project.py | 5 |
1 files changed, 4 insertions, 1 deletions
| @@ -1120,7 +1120,10 @@ class Project(object): | |||
| 1120 | try: | 1120 | try: |
| 1121 | src = os.path.join(self.gitdir, name) | 1121 | src = os.path.join(self.gitdir, name) |
| 1122 | dst = os.path.join(dotgit, name) | 1122 | dst = os.path.join(dotgit, name) |
| 1123 | os.symlink(relpath(src, dst), dst) | 1123 | if os.path.islink(dst) or not os.path.exists(dst): |
| 1124 | os.symlink(relpath(src, dst), dst) | ||
| 1125 | else: | ||
| 1126 | raise GitError('cannot overwrite a local work tree') | ||
| 1124 | except OSError, e: | 1127 | except OSError, e: |
| 1125 | if e.errno == errno.EPERM: | 1128 | if e.errno == errno.EPERM: |
| 1126 | raise GitError('filesystem must support symlinks') | 1129 | raise GitError('filesystem must support symlinks') |
