InvalidSpecError for `repo.checkout("rev")` when `git checkout rev` works fine
還沒有人認領這個 Issue。
評估
研究方向
從 pygit2/repository.py 中 checkout 實作附近開始,重現所提供的 commit-hash 範例。比較 Python binding 解析引數的方式與 git checkout 預期行為之間的差異;當 repo.checkout 接受所示 commit hash 且未拋出 InvalidSpecError 時,即表示完成。
由索引模型根據 Issue 內容生成。
描述
To reproduce:
git clone https://src.fedoraproject.org/rpms/python-pymongo.git
cd python-pymongo
python3
>>> import pygit2
>>> pyrepo = pygit2.Repository("./")
>>> pyrepo.checkout("a3432e746082d0c96811cbf87aa7ae8e7fe62bc8")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib64/python3.11/site-packages/pygit2/repository.py", line 420, in checkout
reference = self.lookup_reference(refname)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_pygit2.InvalidSpecError: a3432e746082d0c96811cbf87aa7ae8e7fe62bc8: the given reference name 'a3432e746082d0c96811cbf87aa7ae8e7fe62bc8' is not valid
>>> (ctrl-d)
[adamw@xps13a python-pymongo (rawhide)]$ git checkout a3432e746082d0c96811cbf87aa7ae8e7fe62bc8
Note: switching to 'a3432e746082d0c96811cbf87aa7ae8e7fe62bc8'.
[...]
HEAD is now at a3432e7 Update to 3.4.0 (#1400227).
so, checkout of that commit works fine with git checkout but not pygit2 checkout. I've no idea why not. Not sure if this is a pygit2 or libgit2 issue.
- 主要語言
- Python
- 星號
- 1.7k
- 分支
- 408
- 平均合併
- 1 天 21 小時
- 30 天內合併 PR
- 4
環境準備
- 沒有 Dockerfile 或 Docker Compose 檔案
- 沒有 Pull Request 範本
- 閱讀貢獻指南
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
libgit2/pygit2 的其他 Issue
-
難度 2/5 1-3 小時 新手友好度 72/100
-
難度 1/5 1 小時以內 新手友好度 88/100
-
Feature Request: Support app-level temporary config overrides using libgit2's backend supprt可能已有人在做 關聯的 PR 仍在進行中或已合併。 未關閉
難度 4/5 3-5 天 新手友好度 45/100
-
難度 3/5 1-2 天 新手友好度 48/100
-
難度 3/5 1-2 天 新手友好度 55/100
相似的 Issue
-
難度 2/5 1-3 小時 新手友好度 74/100
vllm-project/vllm#61131 ·
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 78/100
kubernetes-client/python#2735 ·
維護者通常 1 天內回覆
-
desktop help wanted test
難度 2/5 1-3 小時 新手友好度 78/100
維護者通常 1 天內回覆
-
docs pydanty:is-working
難度 2/5 1-3 小時 新手友好度 68/100
pydantic/pydantic-ai#10113 ·
維護者通常 1 天內回覆
-
Tutorial unit test leaks sample data into tutorial doctest可能已有人在做 @Gambit-Checkmate 今天認領。 未關閉
難度 2/5 1-3 小時 新手友好度 84/100