doomemacs/modules/tools/upload/README.org

80 lines
2.6 KiB
Org Mode
Raw Normal View History

#+title: :tools upload
#+subtitle: Map local directories to remotes via ssh/ftp
#+created: February 20, 2017
#+since: 2.0.0
* Description :unfold:
2020-05-09 22:30:03 -05:00
Uses ~ssh-deploy~ to map a local folder to a remote one.
From the [[https://github.com/cjohansson/emacs-ssh-deploy/blob/master/README.md][ssh-deploy README]]:
#+begin_quote
2020-05-09 22:30:03 -05:00
The ssh-deploy plug-in for Emacs makes it possible to effortlessly deploy local files and directories to remote hosts via Tramp (including but not limited to SSH, SFTP, FTP). It tries to provide functions that can be easily used by custom scripts.
The idea for this plug-in was to mimic the behavior of PhpStorm deployment functionality.
#+end_quote
2020-05-09 22:30:03 -05:00
** Maintainers
- [[doom-user:][@hlissner]]
2020-05-09 22:30:03 -05:00
[[doom-contrib-maintainer:][Become a maintainer?]]
2020-05-09 22:30:03 -05:00
** Module flags
/This module has no flags./
2020-05-09 22:30:03 -05:00
** Packages
2022-09-26 02:19:42 +08:00
- [[doom-package:ssh-deploy]]
2020-05-09 22:30:03 -05:00
** Hacks
/No hacks documented for this module./
** TODO Changelog
# This section will be machine generated. Don't edit it by hand.
/This module does not have a changelog yet./
* Installation
[[id:01cffea4-3329-45e2-a892-95a384ab2338][Enable this module in your ~doom!~ block.]]
/This module has no external requirements./
2020-05-09 22:30:03 -05:00
* TODO Usage
#+begin_quote
🔨 /This module's usage documentation is incomplete./ [[doom-contrib-module:][Complete it?]]
#+end_quote
Uses ~ssh-deploy~ to map a local folder to a remote one. Set
~ssh-deploy-root-remote~ and ~ssh-deploy-root-local~ in a =.dir-locals.el= file
to establish this mapping. E.g.
#+begin_src emacs-lisp
2020-05-09 22:30:03 -05:00
((nil . ((ssh-deploy-root-local . "/local/path/to/project")
(ssh-deploy-root-remote . "/ssh:user@server:/remote/project/")
(ssh-deploy-on-explicit-save . t))))
#+end_src
2020-05-09 22:30:03 -05:00
#+begin_quote
📌 ~ssh-deploy-root-local~ is optional, and will resort to ~doom-project-root~
if unspecified.
#+end_quote
2020-05-09 22:30:03 -05:00
* TODO Configuration
#+begin_quote
🔨 /This module's configuration documentation is incomplete./ [[doom-contrib-module:][Complete it?]]
#+end_quote
2020-05-09 22:30:03 -05:00
Check out [[https://github.com/cjohansson/emacs-ssh-deploy#deployment-configuration-examples][Deployment configuration examples]] for some ideas of what's possible.
* Troubleshooting
** ~root-local~ and ~root-remote~ must match
The final directory names much match:
#+begin_src emacs-lisp
2020-05-09 22:30:03 -05:00
((nil . ((ssh-deploy-root-local . "/local/path/to/example-project")
(ssh-deploy-root-remote . "/ssh:user@server:/remote/example-project/")
#+end_src
* Frequently asked questions
/This module has no FAQs yet./ [[doom-suggest-faq:][Ask one?]]
* TODO Appendix
#+begin_quote
🔨 This module has no appendix yet. [[doom-contrib-module:][Write one?]]
#+end_quote