好的,这似乎是一个愚蠢的问题,我没有很多使用git的经验,因为我的工作一直依赖GitHub桌面。所以我的问题是,github远程repo是否只能通过GithubAPI提交和推送到。不在系统上安装git就可以完成吗?我使用过PyGitHub和git python,甚至python子流程,它们可以用来创建远程repo,初始化并添加到本地repo,执行提交并推送到远程repo,我知道这些服务需要使用系统上安装的git客户端
所以我只是想知道,是否只有独立的github api可以通过python请求调用,以实现同样的功能,但要求是我不必在本地系统中安装Git。这件事上的任何帮助都会很有启发性
有点:您可以通过API与原始对象进行交互,我不确定您是否可以像在您的机器上一样使用git,并像在本地安装git那样从本地工作副本推/拉
我的经验是,它需要对Git的底层基础知识(blob、trees、commits、refs及其关系)有一些了解:v3api公开了一个git data / git database端点,它提供了对底层Git结构的透明访问。有一些限制(例如,无法通过此功能与全新的空存储库交互,您必须至少有一个提交,像“cherrypick”或“rebase”这样的高级操作不可用,并且如果需要,必须手动滚动,…),但除此之外,它工作正常
为了理解底层对象,我推荐Git书籍的“Git内部”一章,第10.2 Git Objects和10.3 Git References节。还有一些“从头开始”的教程,通过从头开始构建部分git客户端,以更实际的方式解释这些结构
如上所述:您可以通过API以各种可能的方式与github存储库进行交互,但是用API重建git客户机可能很困难
PyGithub将使您能够处理我们在Github.com中拥有的任何内容。管理您的本地git。例如,提交、推送或隐藏。您可能需要使用一些处理Git的python模块,而不是Github。其中一个例子可能是 https://github.com/gitpython-developers/GitPython
相关问题 更多 >
编程相关推荐