Почему мои файлы не отправляются на мой SFTP-сервер?

У меня проблемы с отправкой моей ветки на сервер SFTP. Я следую инструкциям здесь.

Когда я нажимаю на ветку, кажется, все завершается успешно. Я получаю сообщение "Создана новая ветвь.", И если я снова делаю "bzr push", он говорит: "Нет новых изменений, чтобы подтолкнуть". Но когда я захожу на SFTP-сервер, чтобы посмотреть каталог, в который я поместил свою ветку, там только каталог.bzr. Ни одного из моих файлов там нет. У кого-нибудь есть идеи, почему это может быть?

1 ответ

Решение

Моя проблема была решена на Launchpad. Вот некоторые из ответов (взяты из вопроса Launchpad):

От bzr help push:

Описание:

В целевой ветви не будет заполнено рабочее дерево, потому что это дорого и не поддерживается в удаленных файловых системах.

Некоторые интеллектуальные серверы или протоколы могут создать рабочее дерево в будущем.

Возможно, вы захотите следовать этим инструкциям, чтобы развернуть полный удаленный сервер bzr-loggerhead

Кроме того, и просто если вам нужно рабочее дерево на вашем сервере sftp, вы можете запустить bzr update как показано в working-treeпомощь:

Если вы хотите иметь рабочее дерево на удаленной машине, которую вы нажимаете, вы можете либо запустить bzr update в удаленной ветви после каждого нажатия или используйте другой метод для обновления дерева во время отправки. Есть rspush Плагин, который будет обновлять рабочее дерево с помощью rsync, а также делать push. Также есть push-and-update плагин, который автоматизирует работу bzr update через SSH после каждого нажатия.

Посмотрите здесь, если ваш SFTP-сервер не позволяет устанавливать bzr или хуки в хранилище. Для веб-разработки я использую sshfs для обновления публичной версии.

Для монтажа вам понадобятся варианты -o idmap=user,workaround=rename привязать удаленного пользователя к себе и обойти проблему с переименованием в существующий файл в протоколе SFTP.

Суммировать это в команды

Prequesites

sudo apt-get install fuse-utils sshfs

Mount Dir

mkdir ~/sftp.my-site.org

монтаж

sshfs sftp-username@sftp.my-site.org: ~/sftp.my-site.org -o idmap=user,workaround=rename

Запустить обновление

cd ~/sftp.my-site.org; bzr update

Заметки

  • Замените "sftp-username" своим именем пользователя на SFTP-сервере.
  • Замените "sftp.my-site.org" на имя сервера SFTP.
  • Обязательно включайте в конце двоеточие: после имени сервера, если там используется домашний каталог.
Другие вопросы по тегам