【发布时间】:2021-12-27 04:31:33
【问题描述】:
我在一家公司工作,我们的网站上有一个每天更新的下载计数器,所以每次我从远程存储库中提取时,都会有需要提交的更改,但有人告诉我忽略这一点并且首席开发人员将在未来某个时候进入 .gitignore 文件夹(计数器是网站的新增功能)。
问题是这样的:
我去 master 分支结帐,它不会让我,因为我有未提交的更改;对我使用的 git 来说相当新:
git checkout content-fs-04112021 -f
(我假设'-f'表示力)
现在当我再次签出主分支并使用时:
git status
它说我的分支与 origin/master 是最新的,并且没有任何要提交的东西。
我的目的不是提交任何东西,但我只想知道我修改后的文件发生了什么。
我是否在主分支上提交了更改?如果没有,为什么修改后的文件不显示?
【问题讨论】:
-
您没有将更改提交给 master,您可能丢失了对这些文件的本地更改,因为
-f强制签出并替换这些文件的内容。将来首先使用git stash可能是您想要做的(隐藏您的本地更改以获得干净的工作副本,然后可以在不需要-f的情况下签出不同的提交) -
或者,换一种说法:
-f确实的意思是“力量”,这反过来又意味着“是的,我知道我将永远失去我的工作,我打算这样做”。您必须以其他方式恢复工作(从备份或重新执行)。
标签: git gitignore git-commit git-checkout