Git 新创建的repo中已存在旧文件

Git 新创建的repo中已存在旧文件,git,gitlab,Git,Gitlab,我有点奇怪 当我使用git push时——设置为上游git@gitlab.example.com:namespace/nonexistent-project.git master要生成一个新的存储库,我发现其中存在一个我在2天前上载的文件夹 然后,我使用gitls tree-r master--name only列出分支主控下当前正在跟踪的所有文件。它们正是我在新回购协议中所拥有的 但是,如果我直接在网站上创建一个新项目,然后将其克隆到本地并推动新的修改,那么这个问题根本不会发生 那么原因是什么

我有点奇怪

当我使用
git push时——设置为上游git@gitlab.example.com:namespace/nonexistent-project.git master
要生成一个新的存储库,我发现其中存在一个我在2天前上载的文件夹

然后,我使用
gitls tree-r master--name only
列出分支主控下当前正在跟踪的所有文件。它们正是我在新回购协议中所拥有的

但是,如果我直接在网站上创建一个新项目,然后将其克隆到本地并推动新的修改,那么这个问题根本不会发生

那么原因是什么呢


谢谢大家!

这里的问题是,在新项目中重复使用相同的存储库。如果您想要一个新的存储库,那么应该保留所有现有的存储库,然后运行
git init PROJECT
,其中
PROJECT
是您想要处理的项目的目录。然后,您可以切换到该目录并处理您的项目。在这个新项目中,您可以运行上面运行的
gitpush
命令,一切都会正常工作


git push——设置上游远程主库
更新现有存储库的
master
分支,以自动从新的远程存储库获取数据并将其推送到新的远程存储库。但是,这并不能改变一个事实,即旧项目中的现有代码位于本地存储库中,因为您正在为代码重用同一本地存储库。

我想我理解您的意思。但即使在我运行了
git init PROJECT
之后,通过运行
git ls tree--full tree--r--name only HEAd,这些文件仍然在本地repo中。所以,如果我没有提前在网站上创建新项目,而是通过将新项目推送到gitlab来生成新项目,我仍然会将它与旧文件弄乱。那么,如何清空存储库,或者如何使用不同的存储库来推送仅包含新文档的新项目呢?一旦创建了新项目存储库,您可以执行
git pull OLD master
,然后使用
git log
查找旧项目最后提交的哈希值。然后,您可以按照下面的步骤将新项目重新设置为空提交。然后,在旧项目中,运行
git reset--hard HASH
,其中
HASH
是旧项目的最后一次提交。