gpt4 book ai didi

git - 如何同步我的本地 git 仓库并删除远程仓库中消失的分支

转载 作者:太空狗 更新时间:2023-10-29 14:21:38 26 4
gpt4 key购买 nike

关于这个,我看到过很多类似的 stackoverflow 问题。我尝试了很多方法,但仍然卡住了。

我有一个这样的脚本:

git fetch --prune

for k in $(git branch --merged| grep -E -v "(^\*|master|dev|release|origin)"); do
if [ -z "$(git log -1 --since='38 week ago' -s "$k")" ]; then
## Info about the branches before deleting
git log -1 --format="%ci %ce - %H $k" -s "$k";
## Delete from the remote
# git push origin --delete "$k";
## Delete the local branch, regardless of whether it's been merged or not
# git branch -D "$k"
fi;
done

我明白了:

host:folder user$ clean-up.sh 
2018-05-18 14:46:25 -0700 gituser@company.com - 646766c885324b4f298d55604e0aabc2a00fdb58 feature/some-branch
2018-05-16 19:56:56 -0400 gituser@company.com - 4e09733554eaf5e293ca7c668c19ec1395b361f9 some-other-branch

所以它说要删除以下两个分支:

feature/some-branch
some-other-branch

但他们实际上已经在前一段时间被远程删除了。问题是我的本地 repo 协议(protocol)仍然有它们。我尝试了很多方法将我的本地存储库与远程同步,以便从远程删除的分支也将从本地删除。

有人知道好的解决方案吗?

一个更好的解决方案是完全不依赖本地仓库,并且能够通过纯粹依赖远程仓库来清理远程中的旧分支。

我试过 git remote prune origin 但没成功

最佳答案

尝试以下命令:

git remote update origin --prune

关于git - 如何同步我的本地 git 仓库并删除远程仓库中消失的分支,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54608721/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com