ssh目录的.gitignore文件

时间:2017-11-11 14:45:46

标签: git ssh gitignore

我正在尝试确保.ssh目录的内容不会进入Git存储库:

执行:〜$ git diff --stat --cached origin / master

.gitignore           |   7 ------
 .ssh/.gitignore      |   2 ++
 .ssh/authorized_keys |   1 +
 .ssh/id_rsa          |  51 ++++++++++++++++++++++++++++++++++++++
 .ssh/id_rsa.pub      |   1 +
 .ssh/known_hosts     |   2 ++
 .viminfo             | 123 +++++++++++++++++++++++++++++++++++++++++++++++++++-----------------------------------------

然后按照以下方式将它们删除:

executeS:~$ git rm --cached .ssh/authorized_keys
rm '.ssh/authorized_keys'
executeS:~$ git rm --cached .ssh/id_rsa
rm '.ssh/id_rsa'
executeS:~$ git rm --cached .ssh/id_rsa.pub
rm '.ssh/id_rsa.pub'
executeS:~$ git rm --cached .ssh/known_hosts

我有以下.gitignore文件

executeS:~/.ssh$ pwd
/home/dockcclubdjango/.ssh

executeS:~/.ssh$ cat .gitignore
.*
!/.gitignore

但是如果我这样做,“git add。-A”,我得到了我在步骤1中的全部结果 再次。我该怎么做才能确保。不要进入 存储库

1 个答案:

答案 0 :(得分:2)

您还需要

  1. /.ssh行添加到您的.gitignore
  2. 提交所有更改(从git中删除.ssh并将该行添加到.gitignore
  3. 现在git add -A不会将其添加回来(使用Git 2.15.0测试)

    关于第二个问题("我该怎么做以确保.ssh永远不会进入存储库?"):.gitignore不会阻止将文件添加到存储库。您始终可以使用git add -f path/to/file添加被忽略的文件。