2013-01-08 3 views
0

Я хочу удалить все удаленные филиалы которые не существуют в Местное хранилище.no "--prune" опция

Я попробовал команду:

git push --prune origin 

Но мой мерзавец жалуется следующее сообщение об ошибке:

error: unknown option `prune' 
usage: git push [<options>] [<repository> [<refspec>...]] 

    -v, --verbose   be more verbose 
    -q, --quiet   be more quiet 
    --repo <repository> repository 
    --all     push all refs 
    --mirror    mirror all refs 
    --delete    delete refs 
    --tags    push tags (can't be used with --all or --mirror) 
    -n, --dry-run   dry run 
    --porcelain   machine-readable output 
    -f, --force   force updates 
    --thin    use thin pack 
    --receive-pack <receive-pack> 
          receive pack program 
    --exec <receive-pack> 
          receive pack program 
    -u, --set-upstream set upstream for git pull/status 
    --progress   force progress reporting 

Почему мой мерзавец не имеет --prune вариант ??

ответ

3

Опция --prune была введена git в версии 1.7.10. Возможно, у вас установлена ​​более старая версия.

Для сравнения, сравните документы для 1.7.9 с данными для 1.7.10.

+0

Затем, какой вариант использовать для достижения моей цели? – john123

+1

Ну, вы могли бы просто обновить свой git. Если это невозможно, вам, вероятно, придется самостоятельно перебирать свои локальные ветви и проверять наличие удаленного партнера. Должно быть возможно с небольшим количеством сценариев оболочки ... –

+0

@ john123 Еще один вариант - удалить ветки один за другим. 'git push origin: branchname'. Обратите внимание на двоеточие перед именем ветки. – thameera

Смежные вопросы