代码之家  ›  专栏  ›  技术社区  ›  Michiel Borkent

为什么要对Emacs初始化文件使用Dropbox和Git?

  •  9
  • Michiel Borkent  · 技术社区  · 15 年前

    我听说很多Emacs用户在Git版本控制下有他们的init文件(.emacs或init.el),当他们在多个系统上运行Emacs时,通过Dropbox同步Git存储库。 你为什么要在这种情况下使用git?

    通常检查您所使用的系统以及要加载和设置的内容,这取决于所有系统的同一个init文件中可能发生的情况。为什么要保存init文件的版本历史记录,它是否真的需要为它辩护一个git存储库?

    那么,将in it文件放在Dropbox目录中并直接从Emacs加载该文件,而不是从Dropbox中同步的git repo中提取最新版本,这难道还不够简单吗?

    5 回复  |  直到 14 年前
        1
  •  7
  •   Jörg W Mittag    15 年前

    Git给你版本控制,Dropbox给你免费私人托管。

    直到最近,这是我所知道的唯一一种免费托管私有Git回购的方法。Gitorious、Repo.or.cz和Co.没有私人回购,Github、Sharesource和朋友为私人回购收费。我所知道的唯一一家提供免费私人回购服务的招待所,但这家招待所是三周前才开始的。

    个人配置文件可能包含敏感数据,因此私人托管这些文件是有意义的,但仅为一个文件支付GitHub 7$/mo可能没有意义。 .emacs 文件。

        2
  •  2
  •   gko    15 年前

    我不仅对Emacs配置文件使用Dropbox,还对所有其他外部包(更新的组织模式、slime等)和单个.el文件使用Dropbox,以便安装和配置它们(加载路径, 所有系统只需一次信息文件、字节编译等,并使用git管理配置文件(常规设置、系统或特定于操作系统的自定义)。

    之后,这一切都是下坡,因为我在我的Dropbox中放置了大量的参考资料(API文档、协议材料、备忘单等)以及开发素材(Java jar文件、源代码等),这样我就可以在所有的系统上都有相同的开发环境,使用Emacs命令来访问所有的东西。

        3
  •  2
  •   Alf    14 年前

    只要将配置文件视为代码,就需要使用适当的VCS。Dropbox提供了一些价值,但它与Git不在同一个联盟中。

    简而言之,当您处理代码时,您不仅仅希望回滚到文档的早期版本。您需要一种快速有效的方法来查看版本之间的差异。你想知道什么发生了变化,为什么发生了变化,什么时候发生了变化,等等。你想创建一个实验分支,在那里你尝试一些新的东西,而不把你知道的有用的东西弄乱。你想把实验中的一些变化拉进你的稳定分支;但也许不是全部。

    另一个问题是,将来,由于某种原因,您可能希望从Dropbox中移动文件,包括所有历史记录。如果你使用git,这是微不足道的。

        4
  •  1
  •   SyntaxT3rr0r    15 年前

    一旦开发人员找到他们喜欢的版本控制系统,就会倾向于将其用于所有重要的文件。--您要确保始终备份、管理和维护文件的历史记录(包括注释日志、更改原因等)

    Git吸引了很多用户,听说有人用它跟踪init文件,我并不感到惊讶。

        5
  •  1
  •   Michael Ekstrand    14 年前

    Dropbox为您提供了一些历史支持,但它不如Git那么广泛和可控。如果开发人员知道Git,那么他们在Git中保存Emacs等配置文件是有意义的。您拥有完整的版本控制,永远不会丢失旧版本,您可以在有用的时间点用有意义的消息提交更改,等等。

    现在,为什么在Dropbox上这样做,当Git允许您在存储库之间推/拉时?简单。如果您的文件在Dropbox上,那么它们在所有Dropbox连接的计算机上都是透明和自动的。所以你不必担心“我改变了吗?最近的更改在哪里?”等等,正如其他人所提到的,您也不需要在某个地方、您自己的服务器或付费服务上有一个私有的Git存储库。

    同时进行这两项操作还可以使您轻松地将配置克隆到不支持Dropbox的计算机(例如远程服务器)。Dropbox可以与您的笔记本电脑/台式机/工作站、服务器上的Git进行同步,而且您在任何地方都有相同的配置,而且麻烦最小。以及有意义的版本控制。