如何在 Bitbucket 上清空 Git 仓库?

81

我刚开始学习Git,并开始尝试使用Bitbucket。但是,现在我想使用我创建的存储库,但不需要其初始历史记录。

有没有办法清除或清理我的存储库,以便我可以从头开始?

我并不太关心任何内容,那么我可以只删除存储库,然后用相同的名称创建一个新的存储库吗?

2个回答

157

不需要将其删除。

从您的新本地存储库创建目录或简单远程 .git,如果您想上传(没有历史记录)现有存储库:

 rm -rf .git

仅从当前内容重新创建存储库

 git init
 git add .
 git commit -m "Initial commit"

然后只需将更改推送到 GitHub 远程仓库,确保覆盖历史记录:

 git push --force -u origin master

这将用本地新分支替换您的BitBucket主分支的历史记录。

现在,如果您之前推送了其他分支,您可能希望删除它们

git push origin :oldBranch

太好了,谢谢!有没有办法从最近的活动日志中删除剥离? - MTCoster
@MatthewCoster 很好的问题。我不知道有没有办法修改 BitBucket 记录的活动列表。(有点像悄悄删除 BitBucket 存储库:https://bitbucket.org/site/master/issue/4271/make-it-possible-to-silently-delete-a)。这可能是一个问题或增强请求,可以添加到 https://bitbucket.org/site/master/issues?status=new&status=open - VonC
2
他问如何清空存储库,而不是用本地更改替换远程存储库的内容。 - qkx
2
@qkx 我在7年前接受了这个答案,因为它确实回答了我的问题。我的意图是在存储库中启动一个新项目,而不是留下一个空的项目。这样做可以实现前者,而不必进行后者 - 这是一种优雅地避免XY问题的方法。 - MTCoster
我更新了答案,展示了更多的可能性,因为我在这里没有找到我想知道的全部内容。 - Christian Müller
1
@ChristianMüller 是的,谢谢您的贡献。非常感谢。我是批准那个编辑的人。 - VonC

3

确实有效,但是对于push命令,您将需要再次提供存储库的完整路径,因为本地存储库已重新初始化。因此,origin需要替换为像这样的内容:https://minime@bitbucket.org/banana/test.git

命令应如下所示:

git push --force -u https://minime@bitbucket.org/banana/test.git master

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