Git:在没有本地存储库的情况下获取有关更改的信息?

时间:2011-02-14 15:33:55

标签: git

我的程序可以通过ssh远程访问git存储库,有时需要获取有关特定git提交的信息(如提交消息)。如何在没有存储库的本地克隆的情况下查询远程git存储库以获取此类信息?

4 个答案:

答案 0 :(得分:5)

我只知道git ls-remote来查找可用的标记和分支及其最新的提交ID。您可以使用它来检查是否已对分支进行了新的提交。

答案 1 :(得分:2)

你可以可能这样做,通过模拟git plumbing (低级)命令的git plumbing (低级)命令已经在内部进行了大量的操作。但是,如果你这样做,你不仅需要自己做很多非常低级的事情,而且你的工作效率也会很低(不仅仅是你第二次请求信息)。

所以我建议你只从存储库中做一个(高级)克隆并以这种方式使用它,即使该存储库只是临时存在的。例如,如果您只想查看最新的提交,则可以通过创建克隆轻松限制克隆的内容(对克隆使用--depth选项)。

答案 2 :(得分:1)

您可以使用ssh远程命令执行来执行任意git命令

  

$ ssh user @ host“cd path / to / repo&& git log”

答案 3 :(得分:0)

如果您使用GithubBitbucket或类似方式托管,也可以使用存储库主机的API。