📅  最后修改于: 2023-12-03 15:21:36.911000             🧑  作者: Mango
当你在一个git存储库中删除一个分支时,分支实际上并没有被真正删除。相反,它被移动到一个特殊的引用称为"refs / 垃圾桶"。
这是为了保留分支的历史记录,以便在某些情况下可能需要恢复它。但是,这种行为可能会导致在git命令中继续查看已被删除的分支,即使您已经在命令行中确认了其删除。在这种情况下,您可能会看到以下输出:
$ git branch
master
* my-branch
another-branch
deleted-branch
即使您已经通过以下命令将"deleted-branch"删除:
$ git branch -d deleted-branch
这是因为删除命令只会删除对分支的引用,但不会立即将其从存储库中删除。
要完全删除已被删除的分支,请使用以下命令:
$ git fetch --all --prune
这将更新您的本地存储库以反映GitHub上的所有更改,并从存储库中永久删除已被删除的分支。现在,您应该能够看到正确的分支列表:
$ git branch
master
* my-branch
another-branch
请注意,这不会影响其他开发人员的本地存储库。如果有其他人在他们的本地存储库中仍然保留已删除的分支引用,则他们可能仍然能够查看它。