Unable to push to remote after committing files
还没有人认领这个 Issue。
评估
调研方向
首先检查仓库配置的 origin URL 和 remote.push 调用,然后验证提供的 RemoteCallbacks 和 UserPass 凭据是如何使用的。使用所示的 pygit2 代码重现不支持 URL 协议的错误,并将 remote 配置与支持的协议进行比较。确定配置或 callback 问题,并记录一次经验证成功的 push,即表示完成。
由索引模型根据 Issue 内容生成。
描述
I am committing some files using pygit2 and want to push to remote branch.
This is what i am doing:
repo = pygit2.Repository(build_dir)
branch = repo.lookup_branch(local_branch)
repo.checkout(branch)
for fl in files:
repo.index.add(fl)
repo.index.write()
message = f"Commiting files {files}"
tree = repo.index.write_tree()
parent, ref = repo.resolve_refish(refish=repo.head.name)
author = pygit2.Signature("user", "email")
commiter = pygit2.Signature("user", "email")
repo.create_commit(
ref.name,
author,
commiter,
message,
tree,
[parent.oid],
)
remote = repo.remotes["origin"]
callbacks = pygit2.RemoteCallbacks(pygit2.UserPass("username", GITHUB_PERSONAL_ACCESS_TOKEN))
remote.push(['refs/heads/master'],callbacks=callbacks)
And i get an error:
_pygit2.GitError: unsupported URL protocol
I cannot find any documentation or any clarity on whats going on here.
Any help will be much appreciated.
thanks
- 主要语言
- Python
- 星标
- 1.7k
- 派生
- 408
- 平均合并
- 2 天 57 分钟
- 30 天内合并 PR
- 7
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
libgit2/pygit2 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 72/100
-
难度 1/5 1 小时以内 新手友好度 88/100
-
难度 4/5 3-5 天 新手友好度 45/100
-
难度 3/5 1-2 天 新手友好度 48/100
-
难度 3/5 1-2 天 新手友好度 55/100
相似的 Issue
-
essnmx good first issue
难度 1/5 1 小时以内 新手友好度 95/100
-
难度 2/5 1-3 小时 新手友好度 65/100
syfoud/Simulated_Scepter#174 ·
-
难度 2/5 1-3 小时 新手友好度 75/100
Giskard-AI/giskard-oss#2840 · 1 条评论 ·
-
A claim comment carrying the issue number is silently declined while the workflow reports success 未关闭area: repo bug perceived difficulty: 2
难度 2/5 1-3 小时 新手友好度 70/100
-
难度 2/5 1-3 小时 新手友好度 75/100
yeti-platform/yeti#1380 ·