Git: исходная ветка не удалит файл, который я удалил из клонированной ветви. - PullRequest
0 голосов
/ 14 августа 2011

Сценарий:

У меня есть удаленное git-репо для веб-сайта, клонированное в мой локальный рабочий каталог.

Когда я работаю в клонированном репо (основной ветке),

  1. Я удаляю test.html, ( $ git rm test.html )
  2. затем передайте изменения ( $ git commit -m "Удаленный тестовый файл" )
  3. наконец, нажмите для удаленного репо (мастер) ( $ git push )

Однако я перехожу на страницу в браузере: http://[website]/test.html, страница все еще отображается. Кажется, test.html еще не был удален. Я почти уверен, что удалил его в локальной клонированной ветке, зафиксировал и отправил.

Я делаю что-то неправильно или пропускаю какой-либо шаг?

Спасибо заранее!

Ответы [ 3 ]

2 голосов
/ 14 августа 2011

При перемещении в удаленное местоположение он обновит хранилище, но не обновит извлечение.Если вы хотите обновить оформление заказа, вы должны написать обработчик пост-получения, делающий это.

0 голосов
/ 14 августа 2011

(Это дополнение к ответу bcurren. У меня нет прав на комментарии, поэтому есть новый ответ)

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

Концептуально репо на вашем локальном компьютере и веб-сервере - это как клиентские репозитории для удаленного репо.Таким образом, после отправки удаленного репозитория на веб-сервере необходимо выполнить его, чтобы получить самые последние коммиты (что в вашем случае включает удаление файла test.html).

0 голосов
/ 14 августа 2011

Все, что вы делаете, кажется правильным. Шаг 4 в этом процессе заключается в том, чтобы перейти на ваш веб-сервер и выполнить git pull из удаленного репозитория (master).

Простой способ проверить это - запустить его show-ref HEAD на веб-сервере и на вашем локальном компьютере. Sha1 должен быть одинаковым, если оба обновлены.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...