将本地文件推送到Github后,本地文件消失了。

3
我遇到一个相当烦人的问题,可能是一个简单的问题,但我在谷歌上找不到任何解决方案。
我目前正在完成一个任务,需要切换“检查点”工作和“任务”工作之间的分支。基本上,每次我将一些东西推送到Github时,我正在工作的文件夹中的本地文件似乎会消失,我不知道为什么。每次都必须重新创建文件,并复制/粘贴代码,这让我发疯了。以下是我在完成检查点或任务后所做的事情;
git add .
git commit -m ""
git push origin "checkpoint name"
git checkout master

在完成这些步骤之后,由于某种原因,我的工作文件夹中的文件不再在本地计算机上,而我无法弄清楚原因。


1
大多数情况下,您所做的更改都在特定分支中。检出该特定分支,然后您必须再次查看更改。 - Pradheep
谢谢 - 看起来好像可以了。我不确定这是否正确,但我进入了最近完成的检查点,进行了 git push,然后它的文件重新回到了我的电脑上。 - mslee017
不要执行最后一个命令(git checkout master)。问题在于有多个分支,除非将其合并到主分支,否则您将无法在主分支中看到更改。 - Pradheep
接受答案,这样问题就可以得出合乎逻辑的结论。 - Pradheep
2个回答

5
问题在于最后一个命令将分支切换到主分支,由于更改尚未合并到主分支,因此更改在主分支中不可见。
建议不要执行最后一个命令 git checkout master,并继续工作,一旦所有更改都完成,然后与主分支合并。
请查看教程以获取更多详细信息:https://git-scm.com/book/en/v2/Git-Branching-Basic-Branching-and-Merging

0

XCode用户的决策:

我也遇到了同样的问题:与GitHub同步后,所有新的本地文件都消失了,尽管它们仍然存在于GitHub上。这让我疯狂。

问题出在xcodeproject/project.pbxproj文件中。它控制项目中呈现的文件。更多信息请参见此处:是否应该忽略xcodeproject/project.pbxproj文件?

结果发现它在我的.gitignore文件中!

要检查这个问题,请打开终端并执行:

cd //go to your root directory
open .gitignore_global //first, look in your global .gitignore

如果您有这个文件,它将在您的文本编辑器中打开。查找该行:

*.pbxproj

并将其删除! 如果您没有.gitignore_global,则在终端中导航到带有Xcode项目的目录,并执行以下操作:

open .gitignore //this will open your local .gitignore for the project

再次查找*.pbxproj行并将其删除。

我希望我早些时候就有这个答案,所以我决定在这里添加它。


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