问题标签 [gitpython]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
312 浏览

python - GitPython - Repo.clone 导致 TypeError: execve() arg 2 must contain only strings

我正在执行以下 GitPython 相关代码以从远程存储库克隆。远程 repo url 通常是 format https://username:password@host/path/to/repo.git

这会导致以下错误,这并不是很有帮助

我尝试将值编码为 utf-8,但没有成功。这些变量的类型显示为str在克隆命令之前记录时。

0 投票
1 回答
4294 浏览

python - Git Python似乎不起作用

我开始使用 python 并尝试使用GitPython,我拼命尝试使用这个模块。

我在许多网站上看到文档很差,我遵循的示例似乎不起作用。

我在 Windows (2012/Python 3.5) 上试过这个:

这在 Linux (Debian/Python 2.7) 上:

但无论如何,我没有结果......并以这个错误结束:

在这两种情况下。

我的问题如下:

  1. 有没有办法让这个模块工作?我找到的所有链接都是旧的......
  2. 如果是,请帮助我或给我一个例子。
  3. 如果没有,是否还有另一个模块?我正在尝试安装 Dulwich,但没有成功(仅在 Windows 上)
  4. 我已经看到有一种使用fab的方法?是否可以用它来操纵 git ?

目标是将来用python管理git,以及其他东西进行集成。

谢谢您的回答。

0 投票
1 回答
2352 浏览

python - 使用 GitPython 进行 git-clean

有没有办法像git clean -d -x -f使用 GitPython 一样做一些事情?

我需要重置工作目录并希望摆脱所有未版本控制的文件而不删除整个文件夹(除了.git)并再次签出。

0 投票
1 回答
1607 浏览

python - 如何: git show hexsha:directorypath/file

感谢您支持我过去几周一直在使用的这个很棒的模块(GitPython)。

我试图在文档中找到 GitPython 中如何调用“git show”的等价物

即使直接与 git 交互

鉴于已知 hexsha、目录、文件,您能否告诉我如何管理和进行上述“git show”调用?

0 投票
1 回答
252 浏览

python - git diff hexsha:目录路径/文件

鉴于hexshadirectory并且file已知,我怎样才能获得 2 个特定文件之间的差异,例如以下将返回 2 个修订之间的差异:

但是,我怎样才能产生<directory>/<file>包含在上述两个版本中的差异?

0 投票
2 回答
2995 浏览

python - 获取 gitpython 中特定文件的所有修订版

我正在使用gitpython库来执行 git 操作,从 python 代码中检索 git 信息。我想检索特定文件的所有修订。但在docs上找不到具体的参考资料。

任何人都可以提供一些关于哪个功能在这方面有帮助的线索吗?谢谢。

0 投票
1 回答
4065 浏览

python - 将 GIT_SSH_COMMAND 与 GitPython 一起使用

我正在使用 GitPython 初始化一个新的本地存储库,创建初始提交并推送到规范存储库。不幸的是,最后一步失败了,我很难理解为什么。我确定我只是使用GIT_SSH_COMMAND错误的变量,但我不确定如何。没有太多的例子可以继续。

我已经阅读了这个 SO question并深入研究了相关问题提交了,但我显然没有设法将它正确地组合在一起。

帮助?

Git v2.3+​​的“证明”

脚本片段

产生的错误

0 投票
2 回答
4192 浏览

python - 如何在 GitPython 中使用 git blame?

我正在尝试在我的脚本中使用 GitPython 模块……但我不能。这不是很记录:GitPython Blame

我想我还没有到目前为止,因为我想重现的通常 git blame 如下:git blame -L127,+1 ../../core/src/filepath.cpp -e

这是我的脚本:

注释的两行是为了最终目标是在我的“lineDeb.txt”文件中的每个数字行上 git blame。

我有以下输出:

我知道我可以使用 os 模块来实现,但我想保留在 python 中。

如果这个模块或python的一些专家可以帮助我?

也许我没有正确使用 GitPython?

目标是获取线路提交者的电子邮件......

提前致谢。

0 投票
1 回答
2605 浏览

python - 使用 GitPython 从远程存储库克隆所有分支的存储库

我正在尝试为我的用户制作一个小程序,用于 git 和其他的基本操作。而且我在克隆私有远程存储库时遇到了很多问题。

我有以下配置:在远程服务器上建立了 Python 3.4 Windows GitPython Ssh 连接。

这是我的代码:

这不会引发错误,但脚本会在最后停止并阻塞终端(给我无限的空行,没有>>>

运行之后,如果我进入 Git Bash 并输入git status他似乎没有创建分支,只需初始化。因此,我添加了代码的最后 3 行以查看发生了什么变化,但什么也没有。

如果我在 Git Bash 中输入git pull,他会很好地拉出 master 分支......

如果有人可以解决我的问题吗?

我在哪里犯了错误?

谢谢

0 投票
1 回答
785 浏览

python - git shortlog 是否有 python 接口?

我正在尝试从 git 中获取日志信息到 python 中。我查看了 pygit2 和 gitpython,但似乎都没有提供类似于 git shortlog 的高级接口。是否有提供这样一个接口的 python 库,或者我应该调用 git 可执行文件?