Git共享仓库中文件的子集,不保留仓库中其他文件的信息

时间:2018-11-30 18:07:10

标签: git

我试图共享一些以前在git存储库中的代码,但是我只想共享文件。因此,我将文件复制并粘贴到没有.git文件的新目录中。如果我尝试rm -r .git,它说没有这样的文件。

但是,当我运行git log时,我看到了前一个仓库的完整日志,这让我想知道那里还有什么?该存储库中以前的某些文件是敏感文件,因此我不想共享它们,因此我想删除所有可能链接到它们的文件。例如,如果git log仍然有效,我想知道是否有人可以签出旧文件之一(敏感文件)?只是要格外小心。

换句话说,git对我来说就像一个黑匣子;我不确定它在回购中存储了哪些有关旧文件的信息。现在我只想共享这些文件的一个子集,但是某些git命令仍然可以使用,所以我很想知道我会不小心共享旧文件中的信息。如何彻底删除所有内容?我尝试了git init,所以现在它已经覆盖了日志,但是不确定那是否是故障安全的。

1 个答案:

答案 0 :(得分:0)

.git位于根目录下,而git跟踪根目录下的所有内容。

将文件的子集完全复制到新目录中。

以下是查看哪个地方“安全”的一种简便方法。

运行git statuscd ..命令,直到看到fatal: not a git repository (or any of the parent directories): .git错误。

在此处创建一个临时目录,然后复制文件的子集。

只需测试一下,在该临时目录中运行git status,您应该会得到fatal: not a git repository (or any of the parent directories): .git