2015-02-09 2 views
1

Я создал репозиторий git некоторое время назад, и теперь понимаю, что мне не нужно много файлов в исходном проекте. Я посмотрел на this site, но мне кажется, что использование git filter-branch не является подходящим инструментом, также потому, что мне нужно удалить много файлов, и нет смысла использовать команду, выделенную там для файлов и каталогов. Я предполагаю, что я хотел бы сделать, чтобы репозиторий на моем компьютере был новым удаленным репозиторием. Итак, есть ли способ заменить удаленный репозиторий полностью на том, что находится на моем компьютере?удалить файлы из удаленного репозитория

+0

В значительной степени это означает 'git push -f'. – larsks

+0

Так что я использую его, как этот «git push -force origin master»? – aaragon

+0

'filter-branch' обычно не требуется для удаления файлов. В большинстве случаев это слишком много, и это может вызвать проблемы с совместными репозиториями. Просто 'git rm' файлы, зафиксировать и нажать. 'filter-branch' удаляет файлы * из всех коммитов *. 'git rm' удаляет их сейчас, но оставляет свою историю. – Chris

ответ

1

Вам нужно будет запустить git push --force origin master из вашего нового местного репо.

Это заставит обновить все ссылки refs для главной ветви на те, которые находятся в вашем локальном репо. Обратите внимание, что это не будет обновлять любую другую ветвь и повлияет только на мастер.

В случае, если вы хотите удалить все остальные ветви из старого репо, а также, вы можете

  • вручную удалить каждый из них с помощью git push origin :branch_name
  • или удалить репозиторий из GitHub, создайте новый репо с тем же именем и теперь вносите изменения в это новое репо.
Смежные вопросы