我是GitHub的新手。当我点击一个Wiki
链接时,会为我的仓库创建一个新的Wiki页面。但我并不需要它。如果我尝试删除仅有的页面,GitHub会询问:“您确定要删除此页面吗?” 我确认了,但是什么都没有发生,页面仍然存在。虽然我不能说这很烦人,但我想知道是否有一种方法可以删除Wiki页面。
我是GitHub的新手。当我点击一个Wiki
链接时,会为我的仓库创建一个新的Wiki页面。但我并不需要它。如果我尝试删除仅有的页面,GitHub会询问:“您确定要删除此页面吗?” 我确认了,但是什么都没有发生,页面仍然存在。虽然我不能说这很烦人,但我想知道是否有一种方法可以删除Wiki页面。
在您项目的GitHub页面上点击设置按钮,取消选中Wikis。
它应该会消失。
一如既往,缺失的部分在GitHub上。结合惯用的git
技巧,你可以擦除GitHub repo上的所有数据,例如销毁wiki ACCOUNT/REPO.wiki.git
:
git clone git@github.com:ACCOUNT/REPO.wiki.git
cd REPO.wiki
git checkout --orphan empty
git rm --cached -r .
git commit --allow-empty -m 'wiki deleted'
git push origin empty:master --force
警告!此教程可以真正删除GitHub上某个仓库的所有数据(除了可能仍然在某处缓存的内容)。我的测试表明,甚至可以……
git clone --mirror git@github.com:ACCOUNT/REPO.wiki.git
之后无法恢复旧数据的任何痕迹。顺便说一句,学习理解上述内容是学习 git
的好练习。
首先,发现您的仓库URL:
$ cd your-project
$ git remote -v
origin git@github.com:belden/foo.git (fetch)
origin git@github.com:belden/foo.git (push)
克隆您的维基; 它的URL是您项目的URL,以'wiki.git'结尾:
$ cd /tmp
$ git clone git@github.com:belden/foo.wiki.git foo-wiki
Cloning into 'foo-wiki'...
remote: Counting objects: 375, done.
remote: Compressing objects: 100% (159/159), done.
remote: Total 375 (delta 214), reused 375 (delta 214)
Receiving objects: 100% (375/375), 78.41 KiB, done.
Resolving deltas: 100% (214/214), done.
现在就像是你要从一个普通项目中删除文件一样处理它:
$ cd foo-wiki
$ git rm *.md
$ git commit -am "remove wiki pages"
$ git push
完成了,任务结束。
git log
)。如果您想要删除历史记录,请参考我的变体。 (git
不会让您在没有git push --force
的情况下清除历史记录,因此如果您省略了--force
,在这方面您是安全的) - Tino以下是详细步骤:
git clone git@github.com:$USER/$REPO.wiki
cd $USER/$REPO.wiki
git push origin --delete master
然后从 "设置" -> "功能" 中取消选中 "维基"。
git push git@github.com:$USER/$REPO.wiki --delete master
将上述代码翻译为中文: - Andrei Neculau如果您从付费的私有层(允许在私有存储库上使用维基)转移到免费层(不允许),则删除维基也可能是必要的。
请注意,您只能在未存档的存储库上禁用维基(使用设置页面上的复选框)- 存档的存储库没有该选项;要在它们上面执行此操作,您必须暂时取消存档。
如果您希望保留内容,则一种好的选择是以正常方式克隆维基存储库:
git clone git@github.com:OWNER/REPO.wiki.git
接着在Github上创建一个名为REPO-wiki的新仓库。然后您可以编辑REPO.wiki/.git/config
文件,在[ remote "origin"]
下的url =
中更改一个字符,从 REPO.wiki
改为REPO-wiki
。