如何通过从 github 克隆一个开源项目来学习应用程序开发的过程?

How do I learn the process of application development by cloning an open source project from github?

我已经完成了大量的 django 教程,现在我想亲自动手。从 github 克隆了一个简单的 django 应用程序,看着复杂的项目布局和大量文件,它让人不知所措。但是,我可以看到作者的(最早的)提交。有没有一种方法可以了解项目从最旧到最新提交的发展情况?如果有,那一系列的 git 命令是什么?

您可以通过交互方式重新设置项目的基础来逐步完成该项目:

$ git rebase -i <sha of the first commit>

这将打开一个编辑器(默认 - ),其中包含项目的所有提交以及 git 应该如何处理它们的说明。默认值当然是 pick。您可以将所有 pick 更改为 edit(在 vi 中::%s/^pick/edit/),保存并退出编辑器(在 vi 中::wq)。

现在,git 将重新设置整个项目的基础,一次提交一个,并在应用每个提交后 return 控制权交给您。所以每次提交,你都会得到提示,并且能够读取代码的当前状态,部署它,调试它等等。当你对当前提交感到满意时,只需使用 git rebase --continue 继续下一个。