Vimdiff改变了Dropbox的文件

时间:2009-08-08 20:05:31

标签: vim vimdiff

我经常收到通知我的Vim我的文件已在其他地方更改,因为我使用Dropbox。

然后我需要按

L 

因为这是我唯一能看到朋友改变文件的方法。这迫使我使用他的版本,然后试着记住我所做的改变。

然而,这个程序对我来说变得困难,因为编辑率增加了。 我想

 vimdiff [file_with_my_edits] [file_with_my_friend's_edits] 
不知怎的,我的朋友的版本与我当前的文件有一些新的编辑。

当版本库相同但当前文件不同时,您如何vimdiff当前文件与朋友的文件,而不会丢失任何修改?

3 个答案:

答案 0 :(得分:8)

如果两个(或更多)人同时处理文件,则应使用版本管理系统,如subversion或git。正如您已经看到的,在这种情况下,dropbox不是解决方案。

答案 1 :(得分:6)

This vim tip提供了一个函数来将当前缓冲区与磁盘上的文件区分开来。它旨在向您显示自上次保存以来所做的编辑,但它也会向您显示您朋友所做的编辑。

答案 2 :(得分:1)

虽然我同意您应该使用源代码控制,但您可以在vim中完成所需的操作。您可以选择不加载朋友的编辑,将您的文件保存到新文件,然后使用vimdiff。你甚至可以在不离开vim的情况下完成所有这些工作:

  1. :w file_with_edits.new(将更改保存到新文件中)
  2. :e file_with_edits(丢弃您的更改)
  3. :diffthis(打开当前缓冲区的差异)
  4. :vsplit(打开垂直拆分,显示两个窗口中的当前文件)
  5. ^w, right(切换到正确的拆分)
  6. :e file_with_edits.new(打开您的更改)
  7. :diffthis(打开右侧的差异)
  8. 所有这一切,源代码控制使这种事情变得微不足道(这是它的主要目标之一)。