emacs - 自动备份服务器上的 emacs 文件编辑

标签 emacs backup cluster-computing

我在远程集群(Linux 操作系统)上有一个大型 C++ 代码存储库。当我需要在我的家用计算机(Ubuntu 操作系统)上处理这些代码时,我尝试通过 X windows 上的 emacs 访问这些代码。然而,X 窗口连接速度非常慢,使得编辑过程变得痛苦。因此,我有时会在本地驱动器和远程集群之间手动移动文件来编辑文件。我的问题是:有没有办法配置我的本地emacs,这样当我在本地空间编辑文件时,它会自动备份到集群中,然后可以编译它?

更新:1

我安装了 TRAMP,它适用于可以直接连接的服务器。不过我也有服务器,只有激活 VPN 才能连接。如何向 TRAMP 提供 VPN 信息以连接到该服务器?

我遇到的另一个问题是如何在 TRAMP 等待远程 shell 的提示时停止 TRAMP,而不必杀死整个 emacs 缓冲区。

最佳答案

这通常是 TRAMP 的用例会有用的。

不要使用 SSH 连接到服务器并使用 X 转发打开 Emacs,而是在您的机器上运行 Emacs 并使用 TRAMP 远程打开文件。例如:

C-xC-f/ssh:user@host:/remote/path/to/the/fileRET

这样,您的 Emacs 进程在本地运行,但所有文件操作(例如保存、恢复等)都会转发到服务器,并且从 TRAMP 缓冲区发出的所有 shell 命令也在远程服务器上运行(这包括 M-x编译)


更新:1

当 TRAMP 挂起等待远程 shell 提示时(由于我仍然不清楚的原因,这种情况经常发生),我通常会终止底层 ssh 进程 (htop) > 树状 View 是执行此操作的好工具)。 TRAMP 注意到这一点并自动重新生成被杀死的进程以恢复操作。

关于emacs - 自动备份服务器上的 emacs 文件编辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13532637/

相关文章:

C#获取两个文件的差异并用于增量备份

android - 使用 adb 备份/恢复?

python - 如何根据图的边进行聚类?

backup - rsync "failed to set times on "XYZ“: No such files or directory (2)

cluster-computing - Ceph 更新后数据 100% 未知

internet-explorer - 集群服务器上的文件下载 servlet 与 IE 的行为不同

emacs - XHTML:如何高亮匹配标签?

emacs - 每次我在 emacs 中输入评论时,tramp 都会卡住它

emacs - Emacs 搜索和替换的好教程 + 引用?

c++ - Emacs shell 与带有 GCC 的终端有不同的行为