git - 如果在分支之前忘记创建它,如何在 git 上创建 'master' 分支?

标签 git branch

最近有人在本地创建了一个 repo,分支出来,并且只将分支推送到远程。其他人是否可以在没有任何提交的情况下创建“主”分支,并将其推送到远程?

最佳答案

不。你不能有一个没有提交的分支,也没有 master分支从来没有提交。 master在您第一次提交之前,Git 存储库中不存在。

当你创建一个新的 Git 存储库时,.git/refs/HEAD将包含以下内容:

ref: refs/heads/master

然而,refs/heads/master尚不存在,并且在您提交之前不会存在。没有master分支直到您的第一次提交,并且没有什么可推的。

您可以使用 git log找到你最早的提交,并创建 master指向该提交,这正是新存储库会发生的情况。

更多信息:fatal: Not a valid object name: 'master'

关于git - 如果在分支之前忘记创建它,如何在 git 上创建 'master' 分支?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26410595/

相关文章:

git shallow clone (clone --depth) 遗漏远程分支

linux - 提交后忽略 Git 中的文件

git - 推送和 merge 之间的区别

git - 有没有办法配置 git commit 的输出?

git - 如何在不在存储库中的情况下执行 Git 命令?

git - 如何在特定提交点将 git 存储库拆分为最近和较旧的提交,保留分支?

svn - 我如何在 svn 中显示 "merge forward"?

svn - 源代码控制分支的不同方法

svn - 在 Web 应用程序的开发/维护期间,我应该使用什么分支策略?

git - 如何将 git diff 输出拆分为单个文件