转到特定版本


圈圈红
2025-03-17 01:35:17 (4天前)
  1. 我克隆了某个项目的git存储库。我可以将文件转换为初始状态以及查看文件时的状态



</跨度>
修订2,3,4 …最近?我想概述项目是如何发展的。

6 条回复
  1. 0# 猫南北 | 2019-08-31 10-32



    我想提一下看似无处不在的命令行工具tig。它是一个文本图形树视图,带有项目修订历史的标签显示等。它可以在ssh等上使用。超级方便。


  2. 1# 一号位 | 2019-08-31 10-32



    我在一个我们有一个主分支的情况下,然后另一个分支称为17.0并在这个17.0内部有一个提交哈希没有说

    “XYZ”
    </强>
    。并且客户在XYZ修订版之前获得构建。
    现在我们遇到了一个错误,需要为该客户解决。所以我们需要为该客户创建单独的分支,直到“xyz”哈希。
    所以我就是这样做的。



    首先,我在本地计算机上创建了一个具有该客户名称的文件夹。说客户名称是“AAA”
    创建该文件夹后,在此文件夹中发出以下命令:





    1. git init
      </强>



    2. git clone
      </强>
      执行此命令后,您将进入master分支。所以切换到所需的分支



    3. git checkout 17.0
      </强>
      这将带您到您的提交所在的分支



    4. git checkout
      </强>
      这将使您的存储库直到该哈希提交。查看更改为提交哈希号的ur分支的名称。现在给这个哈希分支名称



    5. git branch ABC
      </强>
      这将在本地计算机上创建一个新分支。



    6. git checkout ABC
      </强>



    7. git推动起源ABC
      </强>
      这将把这个分支推送到远程存储库并在git服务器上创建一个分支。
      你完成了。

    8. </醇>

  3. 2# 威斯特 | 2019-08-31 10-32



    一种方法是创建对补丁进行的所有提交。签出初始提交,然后在阅读后按顺序应用补丁。



    使用

    git format-patch

    然后

    git checkout


    你应该在你的导演中获得一堆文件,从四个数字开始,这些是补丁。



    当你完成阅读你的修订版时,就这样做

    git apply

    应该是这样的

    1. <code>
    2. git apply 0001-*
    3. </code>
    4. 并计数。



    但我真的很想知道为什么你不想只读取补丁呢?请在评论中发帖,因为我很好奇。



    git手册也给了我这个:





    1. git show next~10:Documentation/README

    2.   </code>
    3. </pre>
    4. <P>
    5.   显示文件Documentation / README的内容,因为它们是下一个分支的第10个最后一次提交时的当前内容。
    6. </p>


    你也可以看看

    git blame filename

    它为您提供了一个列表,其中每一行与提交哈希+作者相关联。


  4. 3# 纾潆锦袖迷子 | 2019-08-31 10-32



    要转到特定版本/提交,请执行以下命令。您可以从中得到HASH-CODE

    git log —oneline -n 10




    1. git reset hard HASH-CODE

    2. </code>



    注意
    </强>

    1. - 重置为特定版本/提交后,您可以运行
    2. <code>
    3. git pull --rebase
    4. </code>
    5. ,如果你想带回所有被丢弃的提交。


  5. 4# 小狮子 | 2019-08-31 10-32



    我创建了一个命令行python工具来查看项目是如何演变的。你可以看看这是否有帮助。该工具托管在以下网址的git上




    https://github.com/yoganand/git-evolver


登录 后才能参与评论