如何清空一个GIT仓库

4
在Tortoise SVN中,有一个名为Repo-Browser的工具,我们可以简单地删除所有文件并再次添加新文件。
那么,在GIT中如何做到这一点呢?
该repo没有托管在GITHub上,并且除了repo url之外没有界面。
为什么要这样做?
我创建了一个本地repo,并将其推送到远程主机,但后来发现它在错误的目录中。因此,在本地很容易处理,只需…
git init 
git add .
git commit -m "New place commit;"

git remote add alias https://user@domain.com/reponame.git
git push alias master

但我遇到了错误。
To https://user@domain.com/reponame.git
 ! [rejected]        master -> master (non-fast-forward)
error: failed to push some refs to 'user@domain.com/reponame.git'
To prevent you from losing history, non-fast-forward updates were rejected
Merge the remote changes (e.g. 'git pull') before pushing again.  See the
'Note about fast-forwards' section of 'git push --help' for details.

当我正在推送一个新的仓库时,一切都很好...所以我只想清除远程仓库,以便能够推送这个新的仓库...


也许你应该看一下这个线程: 如何从Git的历史记录中删除敏感文件? - maxk
这并不完全相同,我想要清空所有内容并从头开始,而他却不愿意。 - balexandre
2个回答

6

我认为你正在寻找-f标志:

git push -f alias master

这会强制远程仓库覆盖 master 分支。

太棒了!有这么多标志,我完全迷失了 :) - balexandre

3

只需在仓库的顶层目录中删除.git目录。 然后,在同一目录中:

git init
git add .
git commit -am 'Initial commit'

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接