【问题标题】:Checkout a new branch without writing current branch commits? [duplicate]在不编写当前分支提交的情况下签出新分支? [复制]
【发布时间】:2020-12-26 12:56:24
【问题描述】:

我想创建一个新分支production 并仅将当前分支develop 中的一个最新提交复制到新分支production。我使用命令git checkout -b production 创建并检查了分支。但是当我在production 分支中使用git log 查看提交而不是获得0 次提交时,我从develop 分支获得了所有提交。我只想要一个来自开发分支的最新提交,我不知道如何实现它。有人可以帮我吗?

谢谢。

【问题讨论】:

  • 'develop' 是父分支,因此任何源自 'develop' 的分支都将维持所有提交,您可能必须从 'develop' 的父分支创建分支并且必须编写最后一个在该新分支中手动提交,
  • 研究使用浅 git 克隆。
  • @TimBiegeleisen 如果您已经在具有完整历史记录的分支上并在同一个存储库中创建另一个分支,那将毫无意义。毕竟分支只是“指针”。
  • 正如上面@iBug 所建议的,您可以尝试创建一个孤立分支,然后对该单个提交执行一个cherry-pick 操作。
  • @nobalG 哦,我明白了。感谢您的信息:)

标签: git github


【解决方案1】:

默认情况下,新分支是从当前分支的最后一次提交创建的。试试这个(在新分支中指定你想要作为 HEAD 的提交):

git checkout -b <new-branch-name> <your-commit-id>

【讨论】:

  • 我仍然收到所有提交。我只想先提交。
猜你喜欢
  • 2011-12-17
  • 2012-10-14
  • 2016-06-23
  • 2019-01-04
  • 2019-12-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多