Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vim在Dropbox中更改了Vim Diff的文件_Vim_Vimdiff - Fatal编程技术网

Vim在Dropbox中更改了Vim Diff的文件

Vim在Dropbox中更改了Vim Diff的文件,vim,vimdiff,Vim,Vimdiff,由于我使用Dropbox,我经常收到一个通知,告诉我的Vim我的文件在别处被更改了 然后我需要按一下 L 因为这是我唯一能看到我朋友更改文件的方法。这迫使我使用他的版本,然后试着记住我所做的更改 然而,这个过程对我来说变得越来越困难,因为编辑的速度越来越快。 我想 vimdiff [file_with_my_edits] [file_with_my_friend's_edits] 不知何故,我的朋友的版本与我的当前文件有一些新的编辑 当版本库相同但当前文件不同时,如何将当前文件与朋友的

由于我使用Dropbox,我经常收到一个通知,告诉我的Vim我的文件在别处被更改了

然后我需要按一下

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

然而,这个过程对我来说变得越来越困难,因为编辑的速度越来越快。 我想

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


当版本库相同但当前文件不同时,如何将当前文件与朋友的文件
vimdiff
放在一起,而不丢失任何编辑?

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

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

虽然我同意您应该使用源代码管理,但您想要的东西可以在vim中实现。您可以选择不加载朋友的编辑,将您的编辑保存到新文件,然后使用vimdiff。您甚至可以在不离开vim的情况下完成所有这些:

  • :带编辑的w文件。新建
    (将更改保存到新文件)
  • :对文件进行编辑(放弃更改)
  • :diffthis
    (打开当前缓冲区的diff)
  • :vsplit
    (打开垂直拆分,在两个窗口中显示当前文件)
  • ^w,右侧
    (切换到右侧拆分)
  • :编辑了的e文件。新建(打开更改)
  • :diffthis
    (打开右侧的diff)

  • 话虽如此,源代码管理使这类事情变得微不足道(这是它的主要目标之一)。

    虽然我同意您应该使用源代码管理,但您想要的东西可以在vim中实现。您可以选择不加载朋友的编辑,将您的编辑保存到新文件,然后使用vimdiff。您甚至可以在不离开vim的情况下完成所有这些:

  • :带编辑的w文件。新建
    (将更改保存到新文件)
  • :对文件进行编辑(放弃更改)
  • :diffthis
    (打开当前缓冲区的diff)
  • :vsplit
    (打开垂直拆分,在两个窗口中显示当前文件)
  • ^w,右侧
    (切换到右侧拆分)
  • :编辑了的e文件。新建(打开更改)
  • :diffthis
    (打开右侧的diff)

  • 话虽如此,源代码管理使这类事情变得微不足道(这是它的主要目标之一)。

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

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

    +1。我无法想象在本质上是一个网络驱动器上同时编辑一个共享文件的情形。我使用Git,但我没有允许我的队友推送到我的Git repo,这样我才能识别每个编辑。这让我想到,我们显然应该有两个基础相同的回购协议。然而,我不知道如何比较他的变化与我的基础。我知道
    opendiff
    file1 file2。显然,我应该
    打开diff我的分支他的分支
    。但是,我不知道该怎么做。也许如果你把git存储库放在dropbox上,并且两个人都有自己的签出,然后推到dropbox上的那个?+1。我无法想象在本质上是一个网络驱动器上同时编辑一个共享文件的情形。我使用Git,但我没有允许我的队友推送到我的Git repo,这样我才能识别每个编辑。这让我想到,我们显然应该有两个基础相同的回购协议。然而,我不知道如何比较他的变化与我的基础。我知道
    opendiff
    file1 file2。显然,我应该
    打开diff我的分支他的分支
    。但是,我不知道该怎么做。也许如果你把git存储库放在dropbox上,两个人都有自己的签出,然后推到dropbox上的签出?这就是我一直在使用的过程。我使用Git进行个人源代码控制我需要解决如何将我朋友的分支连接到我的计算机。这是我一直在使用的程序。我使用Git进行个人源代码控制我需要解决如何将我朋友的分支连接到我的计算机。