使最新提交成为主分支(master)(git)

3

这是我通常做的事情:

$ git add . -Av
$ git commit -m "I want this to be master"

但是当我尝试推送到远程时,“一切都是最新的”并且最新的提交不在主分支上。

$ git branch
* (HEAD detached from f0efe1a)
  added_mongodb_auth
  master
  serviceworkers_branch

如何将最新的提交变为主分支?

你正在使用哪个命令进行推送?你的远程仓库设置正确吗?在提交后,你确实可以在日志中看到一个新的提交(git log)吗?你是否处于正确的分支上? - jbu
你可能需要先将你的更改合并到主分支。 - resting
在运行 git add 之前运行 git branch,你会看到什么? - Shaun Luttin
@jbu,我在git log中看到最新的提交与预期相符。 - staminna
可能是一个重复的问题 如何处理在分离的HEAD状态下进行的提交? - mkrieger1
显示剩余2条评论
1个回答

8

git branch 命令的输出来看,你当前没有处于任何分支上 (这被称为“游离 HEAD”状态)。

为了安全起见,首先创建一个新的分支("save-my-work"),并将你迄今为止创建的提交包含其中:

$ git branch save-my-work

现在,要将这些提交包含在master分支中:
$ git checkout master
$ git merge save-my-work

现在您应该能够像平常一样进行推送。如果您确信master处于您想要的状态,那么可以再次删除 save-my-work

$ git branch -d save-my-work

提示:使用类似于 gitk 的图形化仓库查看器可以更好地了解仓库的状态。


git checkout master 的结果是:HEAD 分离于 f0efe1a 未提交的更改: 修改:mongodumps/webapplication/sessions.bson没有进行任何更改提交 Jorges-MBP:advgest jorge$ git checkout master 错误:您本地对以下文件的更改将被检出覆盖: mongodumps/webapplication/sessions.bson 在切换分支之前,请提交您的更改或将它们存储。 中止 - staminna
然后你需要先提交你的更改 - mkrieger1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接