您的位置:首页 > Web前端

Your configuration specifies to merge with the ref 'br03' from the remote, but no such ref was fetch

2017-03-15 10:13 1376 查看


Git远程05:远程分支的删除与同步

删除远程分支命令:

1

$ git push origin :br03

或者:

1

$ git push origin --delete br03

另一个用户使用
git
fetch
并不能同步获取到br03分支被删除。

1

$ git fetch

此命令没有更新的显示,说明并无删除的信息。

但执行
git pull
时,报错。

12
3

$ git pull
Your configuration specifies to merge with the ref 'br03'
from the remote, but no such ref was fetched.

这肯定是执行git fetch时,报错。

12
3

$ git fetch origin br03
fatal: Couldn't find remote ref br03
fatal: The remote end hung up unexpectedly

但检查分支时,发现origin/br03还存在。

12
3
4
5
6
7
8

$ git br -a
br01br02
* br03
master
remotes/origin/br01-remote
remotes/origin/br03
remotes/origin/master

这说明,
remotes/origin/*
这些远程跟踪分支,仅仅是远程分支的一个缓存,并且,不能通过
git
fetch
命令获取到分支删除的更新

执行命令

12
3
4
5
6
7
8
9
10
1112
13
14
15
16
17
18

$ git remote show origin
* remote origin
Fetch URL: git@github0123:jeremy0123/fetch.git
Push  URL: git@github0123:jeremy0123/fetch.git
HEAD branch: master
Remote branches:
br01-remote              tracked
br02                     tracked
br03-remote              tracked
master                   tracked
refs/remotes/origin/br03 stale (use 'git remote prune' to remove)
Local branches configured for 'git pull':
br01   merges with remote br01-remote
br03   merges with remote br03
master merges with remote master
Local refs configured for 'git push':
br02   pushes to br02   (up to date)
master pushes to master (local out of date)

发现
refs/remotes/origin/br03
状态是stale(陈旧的),并且后面有命令提示。

12
3
4

$ git remote prune origin
Pruning origin
URL: git@github0123:jeremy0123/fetch.git
* [pruned] origin/br03

或者执行

12
3
4
5
6
7

$ git fetch -p
remote: Counting objects: 5, done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (3/3), done.
From git@github0123:jeremy0123/fetch.git
04a6837..d49d143  master     -> origin/master
x [deleted]         (none)     -> origin/br03

在执行fetch之后,删除远程不存在的远程跟踪分支。
总结:
如果本地是最新的,那么:
1.git fetch -p
2.git push origin banshuV1.3.5 && git branch --set-upstream-to=origin/banshuV1.3.5 banshuV1.3.5  
~~ EOF ~~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐