git - `git checkout --orphan` 有什么用?

标签 git git-branch git-checkout

我刚刚发现了 git checkout --orphan,但我不知道如何使用它。它的帮助页面说它创建了一个新的无父分支

master 分支中,我尝试了 git checkout --orphan br,只看到工作目录中的文件更改为“Changes to be committed” ,以及 git logfatal: bad default revision 'HEAD'

那么使用git checkout --orphan有什么好处呢?

最佳答案

git checkout --orphan 的核心用途是在非新存储库上以类似于 git init 的状态创建分支。

如果没有这种能力,所有 您的 git 分支将有一个共同的祖先,即您的初始提交。这是一个常见的案例,但绝不是唯一的案例。例如,git 允许您将多个独立项目作为单个存储库中的不同分支进行跟踪。

这就是为什么您的文件被报告为“待提交的更改”:在 git init 状态下,第一次提交尚未创建,因此所有文件都是 git 的新文件。

关于git - `git checkout --orphan` 有什么用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19980631/

相关文章:

php - 在 webhook 触发后尝试在服务器上运行 git pull,但无法正常工作

git - 为什么这个恢复失败了?

git - 在 github 上 fork,那么我如何管理我的贡献?

git - 为 Git 分支名称创建别名

git - 错误 : pathspec 'temp/versionX' did not match any file(s) known to git

git - git 标签对象的格式是什么以及如何计算它的 SHA?

git - 我可以使用基于 GitHub Web 的编辑器编辑两个文件然后提交一个文件吗?

git - 在没有打开编辑器窗口的情况下修改 Mercurial 提交?

git - 如何确保我在正确的分支上启动运行?

git - 在 Windows 上 checkout HEAD(和变体)时奇怪的 Git 行为