Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
删除GitHub回购协议';s维基_Github - Fatal编程技术网

删除GitHub回购协议';s维基

删除GitHub回购协议';s维基,github,Github,我是GitHub的新手。当我点击Wiki链接时,为我的回购创建了一个新的Wiki。但我真的不需要它。如果我试图删除它的唯一页面,GitHub会问:“您确定要删除此页面吗?”。我确认这一点。什么也没发生,页面还在那里。我不能说这太烦人了,但我想知道是否有办法删除Wiki。单击项目GitHub页面上的设置按钮,然后取消选中Wiki 它应该消失。首先,发现您的回购协议的URL: $ cd your-project $ git remote -v origin git@github.com:belde

我是GitHub的新手。当我点击
Wiki
链接时,为我的回购创建了一个新的Wiki。但我真的不需要它。如果我试图删除它的唯一页面,GitHub会问:“您确定要删除此页面吗?”。我确认这一点。什么也没发生,页面还在那里。我不能说这太烦人了,但我想知道是否有办法删除Wiki。

单击项目GitHub页面上的设置按钮,然后取消选中Wiki


它应该消失。

首先,发现您的回购协议的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
-fu相结合,您可以擦除GitHub repo上的所有数据,例如销毁wiki
帐户/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的一个很好的练习

我找到的最简单的方法是:

git clone git@github.com:$USER/$REPO.wiki
cd $USER/$REPO.wiki
git push origin --delete master

然后从“设置”->“功能”中取消选中“Wikis”。

GitHub在界面方面非常完美,所以这样的事情不会太复杂。它现在在“设置”->“选项”->“功能”下。实际上,这只会使Wiki不可见。它实际上并没有删除它。如果您回到管理页面并单击那里的wiki复选框,内容将再次可见@fnkr是正确的。事实上,如果你已经在某处查看了你的维基,你仍然可以推到它!如果你能猜到raw.githubusercontent.com的url,你也可以访问一些非降价文件……它会消失,但不会删除它。它只是将其作为一个菜单选项删除。这将保留完整的历史记录,这样,如果您愿意,您可以带回Wiki的旧内容(请参见
git log
)。如果您希望历史也被删除,请参阅我的变体。(
git
不允许您在没有
git push--force
的情况下终止历史记录,因此如果您离开
--force
您在这方面是安全的)请注意,您可能需要删除除
master
之外的所有其他分支和标记。还请注意,您可以在
设置中保护GitHub上的分支。这样一个受保护的分支拒绝使用
--force
推送某些内容。因此,一定要取消对有问题的分支的保护。请参阅:这应该被认为是公认的答案。可惜来得这么晚。