这是我面临的情况:
充满生成文件的目录,错误地提交到存储库。它们显然不应该是,所以我想删除它们:
$ git rm --cached foo/*
$ cat > foo/.gitignore
*
!.gitignore
$ git add foo/
$ git commit -m "Ignored stuff in foo"
这几乎解决了问题,但留下了一个不同的问题。当我想要的时候git fetch && git checkout
在生产服务器上,foo/目录中生成的所有文件都将被删除。我可以对双方施展一些魔法吗?请注意,简单地忽略它们并不是一种选择,因为它们可以更改。
您可以尝试:
git fetch
git reset origin/master
git update-index --skip-worktree foo/*
git checkout --
结帐should忽略该文件夹foo
因为git update-index http://git-scm.com/docs/git-update-index命令。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)