将.gitignore放在本地Windows repo中的位置

时间:2016-06-05 21:17:25

标签: windows git github gitignore

我正在尝试为朋友的项目(视频游戏)创建一个Github存储库,但无法使.gitignore文件正常工作。

我试图忽略包含图像和音频文件的目录,因为这些目录不是最好存储在Github上。

我已将.gitignore文件放在存储库的根目录中,并在其中放置规则以忽略上述目录,但不能在不推送数千个PNG和WAV的情况下将存储库推送到GH。

我是否需要将.gitignore放在我的.git文件夹中?

我是否需要重新初始化存储库,因为我在初始化后添加了.gitignore?

以下是我的.gitignore

的内容
sprites/images/
sound/audio/

2 个答案:

答案 0 :(得分:0)

有两种方法可以解决这个问题:

  1. 将两个.gitignore文件放入sprites/imagessound/audio,两者都只包含.。该点与当前目录匹配,因此将排除这两个目录。
  2. 将一个.gitignore放入项目的根目录中,然后添加/sprites/images/sound/audio(每个人都在其自己的行中)。如果您没有在开头添加斜杠,则还会排除src/sprites/images之类的目录。
  3. 如果您想要一个无法置于版本控制之下的存储库/机器特定的gitignore,您可以将忽略行添加到.git/info/exclude。那里的路径将是项目根目录中的相对路径(如2中所示),但由于您无法检查此文件并且在拉动时不会被覆盖,因此您可以在那里添加个人忽略。
  4. Git会立即检测到.gitignore文件,从现在开始发出的任何命令都会尊重它。当然,你也可以提交它,所以每个开发者也都有它。

    如果您已经签入了这些文件,则可以使用git rm(请注意,这也会从磁盘中删除文件!)并在之后提交。

    或者,如果要从整个历史记录中删除文件以缩小存储库大小,则can rebase them out如果您不确切知道这对项目中的其他人意味着什么,请不要坚持使用。它将导致覆盖本地存储库(在任何其他开发人员和GitHub中)的所有更改。

答案 1 :(得分:0)

  • git rm -r --cached .
  • git add .
  • git commit -m "Appropriate message"
  • git push origin branch_name