创建分支时如何获取提交[重复]

Posted

技术标签:

【中文标题】创建分支时如何获取提交[重复]【英文标题】:How to get the commit when the branch is created [duplicate] 【发布时间】:2021-11-15 16:10:58 【问题描述】:

我正在做一些代码复制和合并,首先我创建一个新分支git checkout -b new_branch 来存储所有合并的代码,在我创建它之后,我删除了所有以前的代码以获得一个空分支,然后将代码复制到它。

后来我发现,如果我只是从其他分支复制代码,所有提交历史都会丢失。因此,我想在创建分支时签出分支,并根据该提交重命名/重构代码。

那么如何找到那个提交 ID?

【问题讨论】:

分支是指向提交的指针。创建分支时不会创建新的提交。您只需要查看新创建的分支指向的位置(并且有大量资源告诉您如何执行此操作,例如 this) 如果你丢失了你想要的提交,并且它是最近的,你可以使用git reflog 命令,它有点像git 的回收站 另外,您可能需要浏览一些 git 教程或书籍或其他资源;感觉您在这里缺少背景知识,而不是针对此特定问题的解决方案? 您可以运行git log 来查看提交列表。这就是你要找的东西吗? 我猜是对提交图的视觉检查会给你答案。试试git log --format=oneline --graph --decorate --all 或任何显示所有分支的可视化日志检查器。 【参考方案1】:

提交是为了跟踪文件更改。它们是文件的快照,而分支只是为了在时间线中组织这些快照。分支代表一个独立的开发线。没有真正需要跟踪创建的新分支,但您可以随时查看新分支列表。

【讨论】:

以上是关于创建分支时如何获取提交[重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何在运行 Azure 管道时使用标记在提交时获取 git 分支?

如何获取按最近提交排序的 Git 分支列表?

如何将我当前的更改提交到 Git 中的不同分支 [重复]

pygithub如何获取特定分支的最新提交

如何从当前分支获取已提交文件的提交和更改?

如何在 git 分支中获取给定作者的提交消息历史记录? [复制]