Title: repo.index.add() method attempts to chmod files which it should not · Issue #2021 · gitpython-developers/GitPython · GitHub
Open Graph Title: repo.index.add() method attempts to chmod files which it should not · Issue #2021 · gitpython-developers/GitPython
X Title: repo.index.add() method attempts to chmod files which it should not · Issue #2021 · gitpython-developers/GitPython
Description: The behavior of the repo.index.add() method behaves differently than the CLI equivalent git add: 0$ git add * 0$ python3 -c 'import git; git.Repo.init().git.add("*")' 0$ python3 -c 'import git; git.Repo.init().index.add("*")' Traceback (...
Open Graph Description: The behavior of the repo.index.add() method behaves differently than the CLI equivalent git add: 0$ git add * 0$ python3 -c 'import git; git.Repo.init().git.add("*")' 0$ python3 -c 'import git; git...
X Description: The behavior of the repo.index.add() method behaves differently than the CLI equivalent git add: 0$ git add * 0$ python3 -c 'import git; git.Repo.init().git.add("*")' 0$ python3 -...
Opengraph URL: https://github.com/gitpython-developers/GitPython/issues/2021
X: @github
Domain: redirect.github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"repo.index.add() method attempts to chmod files which it should not","articleBody":"The behavior of the `repo.index.add()` method behaves differently than the CLI equivalent `git add`:\n```\n0$ git add *\n0$ python3 -c 'import git; git.Repo.init().git.add(\"*\")'\n0$ python3 -c 'import git; git.Repo.init().index.add(\"*\")'\nTraceback (most recent call last):\n File \"\u003cstring\u003e\", line 1, in \u003cmodule\u003e\n File \"/opt/conda/base/envs/cds/lib/python3.10/site-packages/git/index/base.py\", line 885, in add\n entries_added.extend(self._entries_for_paths(paths, path_rewriter, fprogress, entries))\n File \"/opt/conda/base/envs/cds/lib/python3.10/site-packages/git/util.py\", line 176, in wrapper\n return func(self, *args, **kwargs)\n File \"/opt/conda/base/envs/cds/lib/python3.10/site-packages/git/index/util.py\", line 111, in set_git_working_dir\n return func(self, *args, **kwargs)\n File \"/opt/conda/base/envs/cds/lib/python3.10/site-packages/git/index/base.py\", line 745, in _entries_for_paths\n entries_added.append(self._store_path(filepath, fprogress))\n File \"/opt/conda/base/envs/cds/lib/python3.10/site-packages/git/index/base.py\", line 698, in _store_path\n istream = self.repo.odb.store(IStream(Blob.type, st.st_size, stream))\n File \"/opt/conda/base/envs/cds/lib/python3.10/site-packages/gitdb/db/loose.py\", line 233, in store\n chmod(obj_path, self.new_objects_mode)\nPermissionError: [Errno 1] Operation not permitted: '/path/to/repo/.git/objects/02/60b9d2b53981a5ddbe20f3f0aae350b2806d22'\n1$ \n```\nI don't see any reason that the python-native methods should be doing anything different than what the CLI does.","author":{"url":"https://github.com/jrollins","@type":"Person","name":"jrollins"},"datePublished":"2025-04-07T23:35:54.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":2},"url":"https://github.com/2021/GitPython/issues/2021"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:13343cb9-8c52-a4fc-943f-284418a51f0e |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | B42C:64A4B:23AF3E7:31BFD8C:69693F93 |
| html-safe-nonce | 4b4a249979668c0da7f123d7fa97cedb108ab10aba3684ee15ad700a12b40604 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJCNDJDOjY0QTRCOjIzQUYzRTc6MzFCRkQ4Qzo2OTY5M0Y5MyIsInZpc2l0b3JfaWQiOiI1NTc0MDc5MzU2NzU4MjEyNDk5IiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0= |
| visitor-hmac | e70d78595d822c353f51a38d90e4c8ce1c75f8eda9cafce290e9cd873a6c4de5 |
| hovercard-subject-tag | issue:2978221206 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/gitpython-developers/GitPython/2021/issue_layout |
| twitter:image | https://opengraph.githubassets.com/d26cf6c2d9c3466e78ba6aa711515c763224012d64925be7b3c0316fd4a20f1b/gitpython-developers/GitPython/issues/2021 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/d26cf6c2d9c3466e78ba6aa711515c763224012d64925be7b3c0316fd4a20f1b/gitpython-developers/GitPython/issues/2021 |
| og:image:alt | The behavior of the repo.index.add() method behaves differently than the CLI equivalent git add: 0$ git add * 0$ python3 -c 'import git; git.Repo.init().git.add("*")' 0$ python3 -c 'import git; git... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | jrollins |
| hostname | github.com |
| expected-hostname | github.com |
| None | 54182691a21263b584d2e600b758e081b0ff1d10ffc0d2eefa51cf754b43b51d |
| turbo-cache-control | no-preview |
| go-import | github.com/gitpython-developers/GitPython git https://github.com/gitpython-developers/GitPython.git |
| octolytics-dimension-user_id | 503709 |
| octolytics-dimension-user_login | gitpython-developers |
| octolytics-dimension-repository_id | 1126087 |
| octolytics-dimension-repository_nwo | gitpython-developers/GitPython |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 1126087 |
| octolytics-dimension-repository_network_root_nwo | gitpython-developers/GitPython |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | d69ac0477df0f87da03b8b06cebd187012d7a930 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width