2015-11-17 2 views
1

Я удалил удаленную ветвь, запустив git push origin --delete с моей локальной машины, но когда я ssh на другую машину, у которой есть клон того же репозитория git, я все еще вижу удаленная ветвь с git branch -av.Удаленная удаленная ветвь git по-прежнему отображается на другом клоне

Может кто-нибудь, пожалуйста, просмотрите приведенные мной команды и дайте мне знать, допустил ли я ошибку или что-то не понимаю.

[email protected]:/var/www/example$ git branch -av 
* master          6b49b28 Theme Update 
    remotes/origin/BL_CustomGrid    8827318 upgraded to BL_CustomGrid 

[email protected]:/var/www/example$ git push origin --delete BL_CustomGrid 
To staging-box:/var/git/example.git 
- [deleted]   BL_CustomGrid 

[email protected]:/var/www/example$ git branch -av 
* master    1f3bb6c Theme Update 
remotes/origin/HEAD -> origin/master 
remotes/origin/master 1f3bb6c Theme Update 

[email protected]:/var/www/example$ ssh staging-box 
Welcome to Ubuntu 14.04.2 LTS (GNU/Linux 3.13.0-48-generic x86_64) 

* Documentation: https://help.ubuntu.com/ 

    [ommiting login messages] 
Last login: Tue Nov 17 14:12:36 2015 from 54.??.??.??? 

[email protected]??-??-???:~$ cd /var/www/staging-example/ 
[email protected]??-??-???:/var/www/staging-example$ git pull 
remote: Counting objects: 27, done. 
remote: Compressing objects: 100% (9/9), done. 
remote: Total 10 (delta 7), reused 0 (delta 0) 
Unpacking objects: 100% (10/10), done. 
From /var/git/example 
    6b49b28..1f3bb6c master  -> origin/master 
Updating 6b49b28..1f3bb6c 
Fast-forward 
skin/frontend/example/default/css/custom.css  | 76 +++++++++++++++++++++++++++++++++++++++++++++++----------------------------- 
skin/frontend/example/default/sass/_checkout.scss | 9 +++++++++ 
2 files changed, 56 insertions(+), 29 deletions(-) 

[email protected]??-??-???:/var/www/staging-example$ git branch -av 
* master          6b49b28 Theme Update 
    remotes/origin/BL_CustomGrid    8827318 upgraded to BL_CustomGrid 

[email protected]??-??-???:/var/www/staging-example$ git push origin --delete BL_CustomGrid 
error: unable to delete 'BL_CustomGrid': remote ref does not exist 
error: failed to push some refs to '/var/git/example.git' 
[email protected]??-??-???:/var/www/staging-example$  

Я попытался removing the git cache после этого, но это не имело никакого значения.

+0

Вам не нужно просто «вытаскивать» изменения при постановке? – lynxlynxlynx

+0

@lynxlynxlynx Извините, я сделал это, но оставил его по моему вопросу по ошибке. Я обновлю его сейчас – Holly

ответ

7

Ваши команды правильные. Единственное, что ваш репозиторий git на STAGING-box не знает, что ветвь удалена. Вы можете показать такую ​​информацию с помощью git remote show origin. Вы должны получить что-то вроде

[...] 
BL_CustomGrid   stale (use 'git remote prune' to remove) 
[...] 

Вам нужно позвонить remote update с --prune в качестве опции для удаления старой информации отслеживания.

git remote update --prune 

По вашему редактированию: git pull объединяет изменения только ветви, которые отслеживаются от текущей ветви. Это также показано в git remote show origin:

[...] 
Local branches configured for 'git pull': 
    master     merges with master 
Local refs configured for 'git push': 
    master     pushes to master 
[...] 
Смежные вопросы