git - 在 .gitignore 之后切换分支并丢失 .gitinored 文件

标签 git version-control github git-branch missing-data

我是 git 的新手,很抱歉,如果这个问题已经得到解答。我很难找到这个问题的答案。

我想忽略一组以前从未提交过的文件,并使用 github 应用程序选择它们并忽略它们。我切换到另一个分支一段时间,当我回到我的分支时,我忽略的文件不见了。

这些文件被删除了吗?

我使用 git checkout 切换回分支,然后使用 git status --ignored 。我丢失的文件不在那里。

最佳答案

您可以通过使用 git reflog --all 从 Github 应用程序在切换到另一个分支之前自动 stash 您忽略的文件时获取 SHA 代码来执行此操作。参见 https://stackoverflow.com/a/8865242/2970321 .

例如,我使用应用程序 (SHA 2ba129d) 获取了 pull 请求 (/pr/364)。在我切换回 gh-pages 之前,它 stash 了我忽略的文件 (SHA 36edfc6)。

finding the SHA code of a dropped stash

所以要恢复,我需要做的就是:

git checkout 36edfc6

我的文件神奇地重新出现了,在再次切换回 gh-pages 之前,我能够安全地将它们手动存储在其他地方。

关于git - 在 .gitignore 之后切换分支并丢失 .gitinored 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14995389/

相关文章:

git - 在 macOS 查看 homebrew 上安装后通过 SSH 连接到 Bitbucket repo

git - 在推送的代码中编辑提交消息

git - 在本地主机上托管一个 git 服务器

xml - 是否有任何正式的方式或已知的方式来规范化 xml 文件以生成差异?

sql - 将 SQL 文件上传到 GitHub 存储库

.net - Mercurial 或 git 哪个有更好的 .NET 实现?

git - Azure Devops 托管构建获取和部署旧文件

version-control - Windows 7 上的 Clearcase 无法创建动态 View

git push origin [local-branch] 尝试推送到远程主分支而不是创建一个新分支

git - 更改 Jenkins 的 github 凭据