git - 多个 Vagrant 盒的最佳实践

标签 git vim emacs ssh vagrant

关闭。这个问题是opinion-based .它目前不接受答案。












想改进这个问题?更新问题,以便 editing this post 可以用事实和引用来回答它.

7年前关闭。




Improve this question




开发人员应该如何根据 IDE 和 git/svn/hg 客户端的放置来管理多个 vagrant box。有两种方法:

1 - 将 git/svn/hg 客户端和 IDE (emacs, vim, ...) 放在主机操作系统中,并使用 SSH 或同步文件夹连接到盒子以编辑/提交代码。

2 - 把所有东西都放在 Vagrant 盒子里。

我想知道哪种方法更受欢迎,每种方法都有哪些优点/缺点。

最佳答案

我想说这在很大程度上取决于个人偏好、您通常的工作流程以及您使用 Vagrant 的目的。如果您在 Chef 或 puppet 上工作,您可以使用诸如 kitchen 或包含的配置程序 (https://docs.vagrantup.com/v2/plugins/provisioners.html) 之类的框架,而无需处理 VM 内部的任何内容。

我个人的偏好是为代码使用同步文件夹(可以在我的 $HOME 中的任何位置),在主机操作系统上编辑它们并在 VM 中对其进行测试。根据具体情况,可能意味着有一个终端用于 vim,另一个终端带有 vagrant ssh session ,大多数时候使用带有 'tail -f logfile' 等的 tmux。在其他情况下,我通常使用 vagrant provision 就足够了通过执行 Vagrantfile 中定义的(shell)命令来实现功能。

个人我更喜欢仅将 Vagrant 框用于实际工作任务。对我来说,使用共享/同步文件夹的好处是,作为开发人员,我可以使用这些工具来编写/修改我想要的文件,而无需在 VM 上安装编辑器、工具(例如代码样式)或点文件以及频繁执行vagrant destroy -y && vagrant up因为我更喜欢干净的环境以避免前面步骤的任何冲突。但这是我个人的偏好。您可以随时修改 VM 基础框并将其保存,以避免重复这些安装步骤。

如果您想与同事分享“黄金形象”或将其提供给新员工,那么包含所有所需工具的预构建基础箱有其自身的优势。如果您需要为所有库或编译器安装开发人员工具,这将特别有用。但即便如此,我个人还是更喜欢我在 VM 工作流程之外的 :)

关于git - 多个 Vagrant 盒的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27707923/

相关文章:

git - 如何使用 tortoisegit 执行 rebase (squash)

vim - 在 Vim 上的新选项卡上打开缓冲区

python - Vim 对 Python 代码的缩进错误(使用 python-mode 插件)

visual-studio-code - VS 代码 : jump to next occurrence of character x

emacs - 如何在同一窗口中执行emacs grep-find链接?

git - 让 Git 不跟踪所有分支

git - 将 sublime text 3 设置为 git commit 文本编辑器

git - 如何在 git-commit 上启用 vim 中的拼写检查

emacs - 如何定义包装命令?

windows - 为什么 emacs 中的 vc-git 和 magit 会忽略我的 git 配置设置?