这是我第一次使用git,我希望我没有犯错误。
我在主分支上的文件上工作了几个小时。
我创建了一个分支,以便朝着不同的方向努力,然后我决定不这样做。因此,在这个新分支中没有编辑任何文件。
所以我删除了新分支。
现在我在最后几个小时完成的所有更改都在主分支中消失了,我又回到了上次提交的状态。
在我创建分支之前,我没有做过任何事情。
现在我的所有更改都丢失了吗?
我在使用第二个分支时甚至不会触及主分支,当我删除它时,git仍然会等待提交更改。
真的希望你能在这里帮助我。我正在使用Mac上的github应用程序。
让我猜猜发生了什么:
论文:如果没有先提交更改,切勿切换到分支。
我想当我创建第二个分支时,当然这个分支将在最后一次提交时创建。所以一切都已经回到最后一次提交。因此,切换回主分支意味着相同。此处没有要跟踪的文件导致所有内容都返回到上次提交的状态。
我是对的吗?
这意味着当您不总是提交更改时,存在丢失数据的巨大风险。你总是应该在切换分支之前提交。正确?
答案 0 :(得分:1)
切换分支会随身携带未提交的更改。因此,github认为您所做的更改是测试分支的一部分,而不是主分支。首先提交,运行git checkout。撤消它们,或在切换之前运行git stash。 (您可以使用git stash apply来获取您的更改)。
在您的方案中,文件更改已经消失,因为您尚未提交 也没有藏起来。