My problem was resolved on Launchpad. Here are some of the answers (taken from the Launchpad question):
From bzr help push
:
Description:
The target branch will not have its working tree populated because this is both expensive, and is not supported on remote file systems.
Some smart servers or protocols may put the working tree in place in the future.
You might want to follow this howto to deploy a complete bzr-loggerhead remote server
Also, and just if you need a working tree in your sftp server you can run bzr update
as shown in working-tree
's help:
If you want to have a working tree on a remote machine that you push to you
can either run bzr update
in the remote branch after each push, or use some
other method to update the tree during the push. There is an rspush
plugin
that will update the working tree using rsync as well as doing a push. There
is also a push-and-update
plugin that automates running bzr update
via SSH
after each push.
Have a look here if your SFTP server does not allow installing bzr or hooks into the repository. For web development, I am using sshfs to keep the public version updated.
For mounting, you will want to use the options -o idmap=user,workaround=rename
to map the remote user to yourself, and work around an issue with renaming onto an existing file in the SFTP protocol.
To sum it up into commands
Prequesites
sudo apt-get install fuse-utils sshfs
Mount dir
mkdir ~/sftp.my-site.org
Mounting
sshfs [email protected]: ~/sftp.my-site.org -o idmap=user,workaround=rename
Run update
cd ~/sftp.my-site.org; bzr update
Notes
- Replace "sftp-username" with your user name at the SFTP server.
- Replace "sftp.my-site.org" with the SFTP server name.
- Make sure to include the trailing colon : after the server name if using the home directory there.