如何使现有github回购成为裸回购
我有私人的github回购协议。由于错误,我推错了源代码。我是否可以将此回购与创建的裸回购相同? 只是为了实验,我创建了公共github repo 我按照以下步骤将本回购协议变成裸回购协议如何使现有github回购成为裸回购,git,github,Git,Github,我有私人的github回购协议。由于错误,我推错了源代码。我是否可以将此回购与创建的裸回购相同? 只是为了实验,我创建了公共github repo 我按照以下步骤将本回购协议变成裸回购协议 git clone https://github.com/shabbirlimdiwala/shabbir_test_repo.git cd shabbir_test_repo mv .git .. rm -rf * mv ../.git . mv .git/* . rmdir .git git c
git clone https://github.com/shabbirlimdiwala/shabbir_test_repo.git
cd shabbir_test_repo
mv .git ..
rm -rf *
mv ../.git .
mv .git/* .
rmdir .git
git config --bool core.bare true
这些步骤是如何使回购成为裸回购的?裸回购这个词并不是你所认为的意思。“裸”存储库是指没有关联工作目录的Git存储库(也就是说,当您运行Git init--bare…
时,它就是您得到的)
从您的评论听起来,好像您只是想从存储库中删除现有的存储库历史记录。简单地删除并重新创建GitHub存储库会简单得多,但如果由于某些原因无法做到这一点,则以下操作应满足您的需要:
- 克隆远程存储库:
$ git clone git@github.com:yourusername/yourrepo.git
$ git push -f origin master
- 删除所有远程标记:
$ cd yourrepo $ git ls-remote --tags origin | awk '!/\^\{}/ {printf ":%s\n", $2}' | xargs git push origin
- 删除所有远程分支(主分支除外):
- 将本地主分支替换为空分支。首先,创建一个新的孤立分支:
$ git checkout --orphan newmaster
- 清除索引:
$ git rm -rf .
- 进行一次空提交:
$ git commit --allow-empty -m 'Initial commit'
- 删除旧的主分支:
$ git branch -D master
- 将
分支重命名为newmaster
:master
$ git branch -m master
- 强制推送到远程存储库:
$ git clone git@github.com:yourusername/yourrepo.git
$ git push -f origin master
Git init--bare…
时,它就是您得到的)
从您的评论听起来,好像您只是想从存储库中删除现有的存储库历史记录。简单地删除并重新创建GitHub存储库会简单得多,但如果由于某些原因无法做到这一点,则以下操作应满足您的需要:
- 克隆远程存储库:
$ git clone git@github.com:yourusername/yourrepo.git
$ git push -f origin master
- 删除所有远程标记:
$ cd yourrepo $ git ls-remote --tags origin | awk '!/\^\{}/ {printf ":%s\n", $2}' | xargs git push origin
- 删除所有远程分支(主分支除外):
- 将本地主分支替换为空分支。首先,创建一个新的孤立分支:
$ git checkout --orphan newmaster
- 清除索引:
$ git rm -rf .
- 进行一次空提交:
$ git commit --allow-empty -m 'Initial commit'
- 删除旧的主分支:
$ git branch -D master
- 将
分支重命名为newmaster
:master
$ git branch -m master
- 强制推送到远程存储库:
$ git clone git@github.com:yourusername/yourrepo.git
$ git push -f origin master
现在您的Github存储库为空。您可以创建新的git目录。 添加github remote并使用镜像选项推送它 git远程添加https://... git推送原点--镜像
这将从远程删除所有内容,包括标记和分支您可以创建新的git目录。 添加github remote并使用镜像选项推送它 git远程添加https://... git推送原点--镜像
这将从您的遥控器中删除所有内容,包括标签和分支您可以删除该回购并重新创建它吗?是的,只需转到存储库设置,删除它,然后使用相同的名称重新创建它。不幸的是,我没有权限在我的私人回购中执行此操作。因此,我必须了解如何使这成为一个简单的报告所有github存储库都是简单的。我不认为“裸体”这个词的意思是你认为它的意思。。。(我相信你只是想清空repo,或者强制推送一个替换提交。)让我详细说明一下,我想删除推送到github repo的整个源代码(所有分支、标记、提交等),而不删除repo本身。你能删除该repo并重新创建它吗?是的,只需到存储库设置,删除它,并用相同的名称再次创建。不幸的是,我没有权限在私人回购的情况下这样做。因此,我必须了解如何使这成为一个简单的报告所有github存储库都是简单的。我不认为“裸体”这个词的意思是你认为它的意思。。。(我相信您只是想清空repo,或者强制推送替换提交。)让我详细说明一下,我想删除推送到github repo的整个源代码(所有分支、标记、提交等),而不删除repo本身。