【问题标题】:Getting the sha1 of a desired commit from a remote repository从远程存储库获取所需提交的 sha1
【发布时间】:2011-06-13 09:09:01
【问题描述】:

使用git reflog,用户只能访问他本地的reflog信息?

如何从远程存储库中查看所需提交的 sha1?

【问题讨论】:

    标签: git reflog


    【解决方案1】:

    我知道这是一个老问题,但我需要 branch from a particular commit 并且需要知道该提交的 SHA 才能这样做。在从 GUI(SourceTree) 中了解了如何做到这一点之后,我还发现了如何从命令行中做到这一点。步骤如下。

    使用命令行

    1. 转到您的 repo 目录
    2. 输入git log
    3. 显示的每个提交的 SHA 位于 commit: 字段中。

    使用 SourceTree 1. 找到你要找的提交 2.右键单击它 3.选择“将SHA复制到剪贴板”

    【讨论】:

      【解决方案2】:

      如果你想要特定分支的 SHA1,你可以试试

      git ls-remote <URL> <branch name>
      

      或者,如果分支名称模式不明确并且您想要更多控制权,可能类似于:

      git ls-remote <URL> | grep refs/heads/<branch name>
      

      或类似的东西。它也适用于标签,但它看起来并不多。

      【讨论】:

      • git ls-remote refs/heads/ 无需 grep 即可工作
      【解决方案3】:

      Git reflog 是您检查过的 sha1s 的历史记录。对于您所在的任何存储库都是如此。如果删除您的存储库并再次克隆它,您将丢失该历史记录。

      第二个问题没有意义。我猜你想git fetch 然后浏览遥控器上你还没有合并的东西。你可以使用git log master..origin/master 来查看远程主机拥有哪些你没有的东西。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-09-14
        • 1970-01-01
        • 2019-05-29
        • 1970-01-01
        • 2014-11-07
        • 2012-05-09
        相关资源
        最近更新 更多