在将 github 中的某个人的整个项目分叉到我的本地驱动器后,如何将其回滚到其初始状态?

How can I roll back someone's entire project in github to its initial state after forking it to my local drive?

有没有办法不回滚每个提交而是到项目的最开始? 那我想一步一步commit,看看作者做了什么改动?

这种情况下的工作流程是什么?

我觉得git checkout应该是你的朋友。

克隆存储库后你可以做

git checkout -B master shainitialcommit

将分支 master 重置为该提交。然后您可以以类似的方式检查每个后续提交。

如果您只想查看逐个提交的更改(而不是与代码交互),有许多 diff 工具可以做到这一点(或者您可以使用

git log | tail 

将显示初始提交,每个提交的提交 ID 如下所示:

commit e73188b5512c82290a4070af4afddac20d0b981e

然后

git checkout e73188b5512c82290a4070af4afddac20d0b981e

Git 将使用此提交作为其当前状态,提交之前的任何文件都将 仍然存在,但被 git 视为 "untracked"。然后你可以清理场景:

git clean -fd

这将清除任何不处于提交状态的文件,然后您 return 直到该提交的状态,并通过 git 日志列表,您可以到达任何您想要的点,通过签出相邻的提交,您可以查看更改。或者您可以在 git 中看到不同之处:

git diff  commit-id1 commit-id2

尝试使用:

git log --reverse

它将在顶部显示第一个提交。然后你可以在第一次提交时签出或者只检查提交的外观:

git show <hash_id>