如何将Atom安装(包和设置)从一台Mac共享/转移到另一台?

时间:2015-06-16 20:14:38

标签: atom-editor

是否可以将Atom从一台Mac复制到另一台Mac,包括所有已安装的软件包,设置等?

6 个答案:

答案 0 :(得分:105)

有几种方法可以在Atom安装之间同步您的设置和包:

  • Git:创建一个公共或私有Git仓库,并将当地~/.atom文件夹的内容存储在那里。忽略.gitignore文件中的以下文件/目录:

    storage
    compile-cache
    dev
    .npm
    .node-gyp
    
  • 使用sync-settings之类的套餐。这会将您的配置存储在GitHub Gist中。

  • Dropbox(或类似):将您的~/.atom文件夹移动到Dropbox文件夹,然后将其符号链接到其原始位置。这有助于同步~/.atom中的所有内容,甚至是您可以忽略的内容。

  • 使用明星选择您喜欢的套餐。在Atom网站上,创建一个帐户并用星星标记您喜欢的包裹。然后使用apm stars --install在任何计算机上安装所有已加星标的软件包。缺点:这仅适用于包装,不适用于设置。

更多详情:

答案 1 :(得分:21)

作为使用RCM等点文件管理系统的用户,我更喜欢独立的配置文件。

目前,Atom还没有正式提供packages.cson文件来管理插件,但正如Syncing settings & packages between machines提到的那样,有一个名为package-sync的插件会生成一个packages.cson档案给我们。

所以在package-sync的帮助下,现在我可以同步这些mininal配置文件,让我的Atom设置和包在多台机器上保持一致。

这是怎么做的(以ubuntu为例):

  1. 安装Atom,并通过编辑 - > 偏好设置 - > 安装安装package-sync作为屏幕截图说明: Install package-sync
  2. 打开命令pallete并输入:Create Package Listpackages.cson文件夹下会有一个~/.atom文件。 Open Command palette Create Package List

  3. 编辑gitignore文件:

    $ gedit~ / .atom / .gitignore

    确保内容为:

    blob-store compile-cache dev storage .node-gyp .npm .apm packages/ atom-shell/

    这是.gitignore文件的屏幕截图: .gitignore

    这可以确保Atom从Internet下载的内容不会同步到您的dotfiles仓库。

  4. .atom文件夹移至dotfile repo:

    $ mv~ / .atom~ / dotfiles / tag-atom / atom

  5. 重新链接文件夹:

    $ ln -s~ / dotfiles / tag-atom / atom~ / .atom

    或者如果您安装了rcm:

    $ rcup

  6. 现在转到另一台计算机,然后安装Atom和程序包同步。更新您的dotfiles仓库,然后打开Atom命令pallete并输入:sync

  7. 现在,您的Atom设置将与RCM dotilfe管理系统同步并集成。

    这是我同步的~/.atom文件夹中的文件: synced files

答案 2 :(得分:6)

我最近构建了一个程序包,可以在多台计算机上自动同步Atom设置和程序包。有点像谷歌浏览器中的书签同步机制。它被称为atom-package-sync。也许它可以满足你的需求。

enter image description here

答案 3 :(得分:3)

.atom文件夹包含packages文件夹,它可能相当庞大。不幸的是OneDrive不允许你排除文件夹,所以我选择了git选项。

我从git中排除了包,而是提交了一个包含我的包(my-packages.txt)的文本文件。

要重新安装我需要运行的软件包:apm install --packages-file my-packages.txt

要生成my-packages.txt,我需要在Bash shell上使用这样的内容:ls packages | xargs -n 1 echo | cut -d/ -f1 > my-packages.txt

答案 4 :(得分:1)

您可以通过package-list.txt文件和简单的shell脚本来同步您的软件包。

创建package-list.txt文件

apm list --installed --bare > package-list.txt

在另一台主机上安装缺少的软件包

BASEDIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
INSTALLEd_PKGS=$(apm list --installed --bare)
for PKG in $(cut -f1 -d@ $BASEDIR/package-list.txt); do
    grep -q $PKG <<< $INSTALLEd_PKGS || apm install $PKG
done

答案 5 :(得分:0)

我使用Resilio Sync Home在Windows,macOS和Linux计算机之间同步我的Atom设置。它是免费的,文件不会保存在“云”上(如Dropbox或Gists),但它要求至少有两台机器在线才能同步当前设置。

我不想同步缓存,安装特定设置等,我更新在同步目录(即.sync/IgnoreList目录)中创建的~/.atom文件。不幸的是,您必须在同步的每台计算机上更新此项(具有讽刺意味的是,IgnoreList文件未同步)。默认情况下,该文件指定要从同步中省略的各种临时文件,因此您需要添加以下内容:

## Atom-specific
/packages/node-debugger/debugger.log
\packages\node-debugger\debugger.log
/.apm
\.apm
/.node-gyp
\.node-gyp
/.npm
\.npm
/blob-store
\blob-store
/compile-cache
\compile-cache
/dev
\dev
/recovery
\recovery
/split-diff
\split-diff
/storage
\storage

一些省略的目录是特定于包的(例如,split-diff)。由于Windows具有与其他平台不同的路径分隔符,因此我需要同时指定(!!)

  1. 在第一台计算机上安装Resilio Sync Home
  2. .atom目录添加到要同步的Resilio。
  3. 更新其IgnoreList文件,如上所示。将此文件保存为要与其同步的其他计算机。
  4. 将该文件夹的Resilio“读取和写入”链接发送到您要同步的其他计算机,或复制要在其他计算机上使用的“读取和写入”键。为此,在Resilio的文件夹视图中,单击.atom文件夹的菜单(右边缘的垂直点)并选择“Copy Read&amp; Write key”。保存以供日后使用。
  5. 然后在你的其他机器上,

    1. 安装Resilio Sync Home
    2. 创建.atom/.sync
    3. IgnoreList从第一台计算机复制到该目录
    4. 添加要与其他计算机同步的.atom目录。您应该使用“输入密钥或链接”添加文件夹,然后在上面输入您复制的密钥。
    5. 等到打开Atom之前完成同步。第一次可能需要几分钟。
    6. 现在我不需要在每台机器上单独安装/删除软件包了!

      仅供参考:如果您需要恢复,文件和目录的更改会在.sync/Archive中保存一段时间。