【发布时间】:2016-01-27 08:58:44
【问题描述】:
这里有人问过类似的问题,但我相信这个特定的问题没有。
我有一个文件params.dat,它为我的代码存储了一些参数值。
这个文件是不断变化的,因为我经常改变参数值,所以我把它的静态版本和其他代码一起添加到我的仓库中,然后忽略它:
git update-index --assume-unchanged params.dat
一切正常,除非我必须对文件的静态版本进行一些更改(这种情况并不经常发生)。我要做的是,首先取消忽略它:
git update-index --no-assume-unchanged params.dat
然后进行必要的更改,提交并推送到 Github,最后再次忽略该文件。
这与我的主存储库完美配合,但是当我尝试从我继续工作的存储库中 git pull 时,我得到:
error: Your local changes to the following files would be overwritten by merge:
params.dat
Please, commit your changes or stash them before you can merge.
Aborting
按照here 的解释,我尝试过这样做:
git fetch --all
git reset --hard origin/master
但我明白了:
error: Entry 'params.dat' not uptodate. Cannot merge.
fatal: Could not reset index file to revision 'origin/master'.
我也试过了:
git stash
git merge origin/master
git stash pop
如here 所述,但在git stash 之后我得到:
No hay cambios locales que guardar
(大致翻译为“没有要保存的本地更改”)
为了清楚起见:我对在我的工作中保存的 repo 中的 params.dat 文件上保留 任何 更改不感兴趣。我只是希望它是我上次从家里推送到 Github 的任何内容的精确副本。
处理这个问题的适当方法是什么?
【问题讨论】:
标签: git