如何从两周前或从特定日期开始 git checkout -b ?

Rey*_*rPM 2 git git-checkout

我正在尝试从master分支签出我的代码的旧版本,我正在执行以下操作:

git checkout -b master_de1974 `git rev-list -n 1 --before="5 days ago" master`
Run Code Online (Sandbox Code Playgroud)

这是正确的命令吗?我如何确定我是否获得旧代码而不是新代码?

oli*_*iaz 5

您应该参考特定的提交,以确保您处于确切的“位置”,即您期望的代码版本。

要查找提交号,您可以检查 github/bitbucket 或任何远程存储库。如果您没有“UI 存储库”,您可以使用命令git loghttps://git-scm.com/docs/git-log列出您的提交,例如:

git log -n10
Run Code Online (Sandbox Code Playgroud)

将显示已保存到树中的最后 10 次提交。找到提交后,您可以从这里创建新分支:

git checkout -b master_de1974 a9c146a09505837ec03b
Run Code Online (Sandbox Code Playgroud)

其中a9c146a09505837ec03b是您的提交号。然后您可以通过再次输入来确定您处于正确的日期/提交状态

git log -n1
Run Code Online (Sandbox Code Playgroud)

它应该显示您选择返回的提交。