【问题标题】:How can I create a new remote branch by a commit with no changes?如何通过没有更改的提交创建新的远程分支?
【发布时间】:2014-02-08 05:09:38
【问题描述】:

当我创建一个新分支并将其推送到我的 git 存储库时,新分支与 master 分支对齐,因为我没有进行任何更改。我就是这样做的。

git checkout -b newbranch
git push -u origin newbranch

我想创建一个带有提交的分支,以便其他人可以看到创建分支的提交消息。但是,我不想在此提交中进行任何更改。基本上,我的新分支应该比 master 领先 1,但文件与 master 中的相同。

我该怎么做?我在git push 之前尝试了git commit -m "created branch newbranch",但是git 告诉我没有什么可以提交的。

【问题讨论】:

  • 为什么需要这样做?他们应该能够在创建分支时在存储库历史图表中看到。这也意味着,更进一步,如果分支被删除,您的主分支上将有一个剩余的空提交,它只是提到了一个已失效的分支。
  • 您可以随时检查是否使用git branch -r 命令创建了远程分支,并查看该分支是否在列表中。

标签: git


【解决方案1】:

我猜--allow-empty 就是你要找的。另见here

git checkout -b new-branch-name
git commit --allow-empty -m "message"
git push <remote> HEAD:branch-name

【讨论】:

    【解决方案2】:

    如果我理解正确,那么不幸的是,您想要实现的目标是不可能的。当您创建一个分支时,您实际上创建了一个引用其他提交的提交。如果您不想更改分支中的任何内容,请添加一个文件并提交,然后在下次提交时删除该文件。

    【讨论】:

      猜你喜欢
      • 2019-06-28
      • 1970-01-01
      • 2014-09-10
      • 2012-07-03
      • 1970-01-01
      • 2018-07-21
      • 1970-01-01
      • 2021-10-15
      • 2010-11-24
      相关资源
      最近更新 更多