如何从旧提交创建新的Git分支?

JZ.*_*JZ. 518 git branch commit

可能重复/更近期/不太清楚的问题
使用Git从先前的提交中分支

我有一个Git分支,jzbranch并且有一个旧的提交ID : a9c146a09505837ec03b.

如何justin根据上面列出的信息创建新分支?

bdo*_*lan 894

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

这将创建一个名为'justin'的新分支并将其检出.

git branch justin a9c146a09505837ec03b
Run Code Online (Sandbox Code Playgroud)

这只是创建分支而不检查它.

  • 值得注意的是,如果你使用`git checkout <SHA1>`检查了一个提交(因此你是一个**分离的**`HEAD`),你可以通过使用`来创建一个分支. git branch <branchname>`或`git checkout -b <branchname>`(同一次提交不需要`SHA1`参数). (95认同)
  • 如果您正在创建一个新分支供其他人使用,但还没有任何提交,您可以使用以下命令进行推送:`git push --set-upstream origin justin` (4认同)
  • 只是想我会补充说,当您不小心丢下藏书时,该技术也可以使用。 (2认同)
  • @mesqueeb我想这意味着切换到分支。第一个命令创建一个新分支并直接切换到它。第二个创建一个新分支而不直接切换到它,因此您仍将位于旧分支上。 (2认同)