自大约一个月前以来,每次我发布“ git pull”时,我最终在“ git branch -a”上出现一堆remotes / origin / pr / *分支,这些分支直接映射到具有曾经在此仓库中打开过。进行“ git remote prune origin”会清除它们。
拉前:
C:\experimental [develop]> git branch -a
* develop
feature/291
master
remotes/origin/HEAD -> origin/master
Run Code Online (Sandbox Code Playgroud)
拉 :
C:\experimental [develop]> git pull
From https://github.com/.../experimental
* [new ref] refs/pull/1/head -> origin/pr/1
* [new ref] refs/pull/10/head -> origin/pr/10
* [new ref] refs/pull/100/head -> origin/pr/100
* [new ref] refs/pull/101/head -> origin/pr/101
* [new ref] refs/pull/102/head -> origin/pr/102
* [new ref] refs/pull/103/head -> origin/pr/103
...
* [new ref] refs/pull/103/head -> origin/pr/382
Run Code Online (Sandbox Code Playgroud)
拉后:
C:\experimental [develop]> git branch -a
* develop
feature/291
master
remotes/origin/HEAD -> origin/master
remotes/origin/pr/1
remotes/origin/pr/10
remotes/origin/pr/100
remotes/origin/pr/101
remotes/origin/pr/102
remotes/origin/pr/103
...
remotes/origin/pr/382
Run Code Online (Sandbox Code Playgroud)
清理 :
C:\experimental [develop]> git remote prune origin
Pruning origin
URL: https://github.com/.../experimental.git
* [pruned] origin/pr/1
* [pruned] origin/pr/10
* [pruned] origin/pr/100
* [pruned] origin/pr/101
* [pruned] origin/pr/102
* [pruned] origin/pr/103
...
* [pruned] origin/pr/382
Run Code Online (Sandbox Code Playgroud)
清理后:
C:\experimental [develop]> git branch -a
* develop
feature/291
master
remotes/origin/HEAD -> origin/master
Run Code Online (Sandbox Code Playgroud)
如何停止将它们拉下来的初始“ git pull”?它只是在大约一个月前才开始发生。
谢谢。
可能您遵循了有关如何在本地检出请求的建议(请参阅https://help.github.com/articles/checking-out-pull-requests-locally)。要摆脱这一点,只需删除该行
fetch = +refs/pull/*/head:refs/remotes/origin/pr/*
Run Code Online (Sandbox Code Playgroud)
从您的.git/config
。