2

有多个人在开发一个 git 存储库,并且他们都拥有对它的写访问权。有人错误地在 repo 上创建了随机分支。我们怎么知道这些分支机构的所有者是谁?

有没有办法识别以下内容:

  1. 谁创建了一个特定的分支?
  2. 分支是什么时候创建的?
4

2 回答 2

0

git 中的“分支”只是一个标签。git 知道的所有信息都是名称和 git 哈希。

从那以后,您不能向 git 询问该信息。您可能能够从内容(pathces 的作者或提交者)或带有描述的文本文件中找出它。

在我的仓库中有一个文件 repo_info.txt 描述了内容、提交规则、分支策略等。

于 2013-07-02T12:32:57.747 回答
0

这将取决于共享存储库的管理方式。

如果它只是作为一个目录访问(对所有开发人员本地访问,或者使用 NFS 或 SMB 等网络文件系统),或者每个开发人员使用自己的系统级帐户(而不是共享 git 帐户)通过 ssh 访问它) 您可以通过查看有关分支指针的文件系统信息来确定这一点。refs/heads这将是一个以裸存储库下的分支或非裸存储库下的分支命名的文件.git/refs/heads。但是一段时间未更新的分支可能已转换为打包的引用,这将丢失该信息。

如果您使用 gitolite 访问存储库,它维护的日志将包含有关分支的所有更新(包括创建它们的第一个更新)的信息,包括用户和时间。

在其他情况下,您可能不走运,除非您使用的软件会跟踪该信息。git 本身不会尝试跟踪它。

于 2013-07-02T13:35:11.653 回答