1

几乎每次我启动一个新的仓库时都会发生这种情况。

  1. 开始一个新项目。创建一堆新文件。

  2. git init

  3. git add .

  4. 哦,拍摄,我需要忽略一些 IDE/构建杂物。

  5. echo ".scons-nodecount" > .gitignore

  6. 该死的,.gitignore 没有看到它,因为这个文件已经被添加了。

  7. git reset .scons-nodecount

  8. 该死, git reset 不起作用,因为还没有提交。

    ...不知道在这里做什么,所以...

  9. 重来:rm -rf .git

- 编辑 -

如何从新仓库的索引中删除文件? git reset是我传统上会做的,但如果没有事先提交,这似乎是不允许的。

4

3 回答 3

5

我一直在做同样的事情。试试git rm --cached .scons-nodecount。这将指示 Git 删除文件,但仅从索引 ( --cached) 中删除。

于 2012-06-25T19:06:28.167 回答
2

如果您不想手动删除所有文件,另一种简单重置完整索引的方法git rm --cached是 delete .git/index。这将在不实际接触文件的情况下重置所有内容,因此您无需完全重新开始。

但当然git rm --cached <file>是你通常会做的。

于 2012-06-25T22:54:38.343 回答
0

最好配置一个全局模板并将 IDE 模式写入 $GIT_DIR/info/exclude,因此在每次初始化时,您都会有一个 IDE 的排除模式,或者只为所有项目使用公共文件并为其指定core.excludesfile

于 2012-06-25T19:14:48.950 回答