Commit fe2ae00
Address review feedback about repository setup
Review feedback identified four setup mismatches: non-missing .git stat failures could fall through to another repository, explicit GIT_DIR could be redirected through a nested .git entry, Gitfile reads were not bounded to the stat-reported size, and alternates ignored GIT_OBJECT_DIRECTORY.
Match Git setup.c by bypassing discovery for an environment-selected GIT_DIR, stopping discovery when Gitfile stat fails for reasons other than a missing path, and reading exactly the previously observed Gitfile size. Resolve alternates below the active ODB root so custom object stores remain internally consistent.
The regressions cover all four cases. This follows Git baseline 15c6308cf7ad276b306aa5b3ababfbdebfb1a917 in setup_git_directory_gently_1() and read_gitfile_gently().
Validation: 11 focused tests plus 12 subtests; Ruff check and format; mypy; compileall; git diff --check.1 parent ad38516 commit fe2ae00
3 files changed
Lines changed: 63 additions & 17 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
295 | 295 | | |
296 | 296 | | |
297 | 297 | | |
| 298 | + | |
298 | 299 | | |
299 | 300 | | |
300 | 301 | | |
301 | 302 | | |
302 | 303 | | |
303 | | - | |
304 | | - | |
305 | | - | |
306 | | - | |
307 | | - | |
308 | | - | |
309 | | - | |
| 304 | + | |
| 305 | + | |
| 306 | + | |
| 307 | + | |
| 308 | + | |
| 309 | + | |
| 310 | + | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
| 314 | + | |
310 | 315 | | |
311 | | - | |
312 | | - | |
313 | | - | |
314 | | - | |
| 316 | + | |
| 317 | + | |
| 318 | + | |
| 319 | + | |
315 | 320 | | |
316 | 321 | | |
317 | 322 | | |
| |||
349 | 354 | | |
350 | 355 | | |
351 | 356 | | |
352 | | - | |
| 357 | + | |
353 | 358 | | |
354 | 359 | | |
355 | 360 | | |
| |||
994 | 999 | | |
995 | 1000 | | |
996 | 1001 | | |
997 | | - | |
| 1002 | + | |
998 | 1003 | | |
999 | 1004 | | |
1000 | 1005 | | |
| |||
1015 | 1020 | | |
1016 | 1021 | | |
1017 | 1022 | | |
1018 | | - | |
| 1023 | + | |
1019 | 1024 | | |
1020 | 1025 | | |
1021 | 1026 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
118 | 118 | | |
119 | 119 | | |
120 | 120 | | |
121 | | - | |
| 121 | + | |
122 | 122 | | |
123 | 123 | | |
124 | 124 | | |
125 | 125 | | |
126 | 126 | | |
127 | | - | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
128 | 132 | | |
129 | 133 | | |
130 | 134 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
41 | 41 | | |
42 | 42 | | |
43 | 43 | | |
44 | | - | |
| 44 | + | |
45 | 45 | | |
46 | 46 | | |
47 | 47 | | |
| |||
148 | 148 | | |
149 | 149 | | |
150 | 150 | | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
151 | 161 | | |
152 | 162 | | |
153 | 163 | | |
| |||
192 | 202 | | |
193 | 203 | | |
194 | 204 | | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
195 | 228 | | |
196 | 229 | | |
197 | 230 | | |
| |||
251 | 284 | | |
252 | 285 | | |
253 | 286 | | |
| 287 | + | |
| 288 | + | |
| 289 | + | |
254 | 290 | | |
255 | 291 | | |
256 | 292 | | |
| |||
519 | 555 | | |
520 | 556 | | |
521 | 557 | | |
| 558 | + | |
522 | 559 | | |
523 | 560 | | |
524 | 561 | | |
| |||
0 commit comments