Не удаётся обновить: после Git Pull «Already up to date»

Приоритет/Серьезность: Обычный

Платформа: Digital Ocean / Своя / 2.9.0.beta5

Описание: Я использую версию 2.9.0.beta5 и хочу обновиться до 2.9.0.beta10, но при вводе в терминале команды “git pull” появляется сообщение “Already up to date”. Кроме того, не работает пересборка.

Шаги для воспроизведения: Ввод команды git pull в терминале выводит сообщение “Already up to date”. Ввод команды ./launcher rebuild app.

Что вы получаете при выполнении команды docker ps?

Мне нужно ввести docker ps в консоль? Извините за глупые вопросы, но я человек, который просто следует инструкциям, а не программист. Надеюсь, вы поймете :folded_hands:

Также я должен отметить, что это позволяет мне выполнить обновление через утилиту обновления Discourse, а не через терминал. Сначала это позволяет обновить только Docker. После этого появится возможность обновить всё остальное. Однако, когда я попытался открыть эту страницу после обновления Docker, она предложила выполнить следующие шаги:

cd /var/discourse
./launcher rebuild app

Это приводит к вопросу: как выполнить обновление, если команда rebuild app по какой-то причине не работает у меня.

Просто выполнение git pull иногда не приводит к получению последних коммитов. Если вы используете GitHub для контроля версий, можно использовать команду git pull origin main. Для других платформ контроля версий обычно применяется git pull origin master.

Пояснение
Команда pull представляет собой комбинацию fetch и merge: git pull = git fetch + git merge

Команда git pull origin main загружает коммиты из основной ветки удалённого репозитория origin (в локальную ветку origin/main), а затем объединяет origin/main с веткой, которая в данный момент активна.

После свежего клонирования репозитория командой git clone <ссылка на ваш репозиторий> у вас появится локальная ветка “main”, удалённый репозиторий “origin”, и ваша ветка main будет иметь “origin/main” в качестве upstream.

Команда git pull работает только в том случае, если активная ветка отслеживает upstream-ветку. Например, если активная ветка отслеживает origin/master, то git pull эквивалентно git pull origin main.

Вы можете проверить состояние репозитория и области индексирования с помощью команды git status.
Например, ниже показан результат выполнения git status в моём репозитории:

On branch main
Your branch is up to date with 'origin/main'.

nothing to commit, working tree clean

Другие полезные ссылки
Для более подробного объяснения различий между различными командами git pull вы можете обратиться к следующим страницам:

Я никогда не использую git при обновлении Discourse. Я просто использую две команды выше. Мне кажется, что уже много лет скрипт rebuild включает необходимую команду git. Надеюсь, это правильно.

Это верно, указывать ветку discourse-docker не нужно — любые обновления репозитория discourse обрабатываются launcher.

Да, но ничего не происходит, когда я пытаюсь выполнить

./launcher rebuild app

Screenshot 2022-12-24 at 02.00.07

Оно просто ничего не делает, хотя раньше всё работало. В предыдущих версиях всё было отлично. Как можно решить эту проблему?

Как видите, лаунчер вообще не работает.

Нет реакции ни на “stop”, ни на “start”.

Как был установлен этот экземпляр?

Digital Ocean предоставляет виртуальные серверы с предустановленным Discourse. Поэтому я воспользовался этим.

Если вы имеете в виду установку в один клик, то мы её здесь не поддерживаем, поэтому я пометил это как unsupported-install. Бесплатная поддержка здесь ориентирована на стандартную установку.

Вы рассматривали возможность создания тикета в DigitalOcean?

Это очень странно. Что показывает

     docker ps

?

Не удалось обновить, так как git pull уже сообщает, что всё актуально

Это:

Хорошо, я нашёл решение:

Просто выполните в следующем порядке:

wget -qO- https://get.docker.com/ | sh
service docker start
git pull
git stash
git stash drop
git pull
./launcher rebuild app