git 分支(没有分支)

标签 git

好吧,我刚刚犯了一个大错。

我正在做一个项目,我以为我在 master 分支工作。
所以我添加了我需要的文件,提交了它们,当我尝试推送到原点时,我得到了

Everything is up to date

我使用git branch 得到了

* (no branch)
* master

因此,在压力之下,我将待处理的更改 stash 在(无分支)中并检查了 master。 现在我丢失了所有更改,因为我无法 checkout “不应命名”的分支。当我列出分支时,我只有

* master

最佳答案

如果更改已提交,您并没有丢失。您只是没有对它们的命名引用。

尝试运行 git reflog并在顶部附近寻找一条类似于 checkout: moving from <commit-id> to master 的行.然后你可以使用那个 <commit-id>创建一个临时分支来检查您的更改并将它们带到 master分支:

git checkout -b temp-branch <commit-id>

您可以 merge 这个分支,或者只是挑选必要的提交。

希望对您有所帮助。

关于git 分支(没有分支),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11882121/

相关文章:

git - 使用 Git 获取所有推送的列表

git - 使用 Ansible 进行 SSH 代理转发

Git Staged - 它有文件历史吗?

linux - 在所有远程和本地 GIT 分支中查找特定文件夹

git - 将更改和添加的文件从没有工作树的裸存储库导出到目录以进行编译或部署

git - 将未提交的更改从 master 移动到分支

git - 我如何将工作从 master 分支克隆到一个新分支?

git - 我没有 ~/.ssh/config 文件,但多个 GitHub 帐户有效,如何?

git - 如何编辑过去的 git 提交以从提交日志中删除我的密码?

git - Git 将来提交不正确的日期会覆盖将来的工作吗?