是否有同步远程和本地分支的命令?
例如,我已经从远程删除了几个使用命令git remote update --prune
不再有用的分支。现在我在本地删除了这些分支。
如果没有相同分支的远程副本,是否有删除本地分支的命令?
答案 0 :(得分:1)
git fetch --prune
应该做你想要的。
答案 1 :(得分:0)
Git中没有用于此任务的内置命令。你必须用自己喜欢的语言写一个脚本。我将使用Powershell,但你总是可以把它变成一些奇特的* SH单线。
脚本:gist.github.com/tkirill/7c14331de4da814069af。它确实:
std::wstring
:branch1和branch2。test-repo
,然后转到此克隆并检出所有分支。最后一步有效地创建了相应的本地分支。test-clone
和branch1
来源。branch2
。脚本:gist.github.com/tkirill/0f0f1902beb0c0723582。它确实:
test-clone
最后一个命令的输出显示我们已删除.\test-rig.ps1
..\remove-local-branches.ps1
和branch1
:
branch2
如果你想要一个通用的解决方案,编写这样的脚本可能会非常棘手。例如,脚本从所有远程控制器获取分支,而不仅仅是源。您可能只想使用原点。
但从我的观点来看,主要的问题是它可以删除未在开发中合并的本地分支。
我认为这正是你所需要的。合并的分支几乎没用。因为这个任务有很多脚本和别名,所以很常见。 Choose你最喜欢的:)对于Windows I wrote对应的posh-git扩展名。