Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git 回购协议的解除散列未显示在其;吉特日志;_Git_Git Commit_Gitpython - Fatal编程技术网

Git 回购协议的解除散列未显示在其;吉特日志;

Git 回购协议的解除散列未显示在其;吉特日志;,git,git-commit,gitpython,Git,Git Commit,Gitpython,挖掘存储库。我基本上是遍历它的git承诺来提取信息。但是,在许多存储库中,我看到git日志中不存在发布的哈希 例如,在项目中,版本v0.19.0.1的哈希是1bc9988。git日志不显示此提交哈希。但是,“git log--all”包含这个提交散列 我想知道这背后的原因。为什么git日志中不存在此哈希?我的挖掘工作依赖于从项目的主要版本中提取数据。我用PyDriller来做这个 from pydriller import RepositoryMining commits = Reposito

挖掘存储库。我基本上是遍历它的git承诺来提取信息。但是,在许多存储库中,我看到git日志中不存在发布的哈希

例如,在项目中,版本v0.19.0.1的哈希是1bc9988。git日志不显示此提交哈希。但是,“git log--all”包含这个提交散列

我想知道这背后的原因。为什么git日志中不存在此哈希?我的挖掘工作依赖于从项目的主要版本中提取数据。我用PyDriller来做这个

from pydriller import RepositoryMining

commits = RepositoryMining(repo_path, only_in_branch=repo_branch).traverse_commits()
for commit in commits:
    // working with a commit

如何获得主要版本的提交?

git log
,默认情况下,从当前提交开始,并通过提交图反向工作。如果您感兴趣的提交无法通过此向后遍历访问,您将看不到它。您可以告诉
git log
从其他提交开始,例如通过分支或标记名
--all
告诉
git log
从所有结束点开始,并从所有结束点向后工作。为什么Y要将
仅\u in_分支
参数传递给
RepositoryMining
构造函数?我从来没有听说过PyDriller,但这个参数显然会将分析的提交限制到给定分支中的提交。也许你只是想省略这个参数?