我有两个非常相似的开源项目的克隆库,我一直在Sublime Text 2的不同实例中工作,以达到我想要的结果。使用了这两个项目的代码。我一直在使用Git作为项目的版本控制,但没有包含原始项目。因此,我希望能够快速比较原始项目的两个文件的内容,并比较它们与我的项目之间的差异。

我希望Sublime Text 2会有一个“比较文件”功能,但我似乎在设置或在线中找不到任何与之相关的东西。完成这项任务的第三方ST2包也可以很好地工作。在ST2文本编辑器中可以完成这样的任务吗?


当前回答

视图-布局和视图-组将在最新的Sublime 3

eg:

Shift+Alt+2—>创建2列

Ctrl+2—>移动所选文件到列2

这是用来并排比较的。 对于实际的diff,还有其他已经提到的diff函数。 不幸的是,我无法找到使列同时滚动的方法,这将是一个很好的特性。

其他回答

有许多diff插件可通过包控制。我用过升华Pro,效果很好,但它是一个商业产品(有无限试用期),而且是封闭源代码的,所以如果你想改变什么,或者只是看看它的内部结构,就不能对它进行调整。从安装量来看,FileDiffs非常受欢迎,所以您可能想尝试一下。

更新2018年1月-特别是Sublime/Mac

(这与Marty F的回复非常相似,但解决了之前回复中的一些问题,结合了几个不同的建议,并讨论了最初给我带来问题的关键区别。)

我正在Mac上使用Sublime Text 3 (build 3143),并且已经尝试了大约30分钟来找到这个文件比较功能。我以前在Sublime/Mac上使用过,没有任何问题,但这一次,它比较棘手。但是,我终于明白了。

文件格式不需要为UTF-8。我已经成功地比较了UTF-8、ISO-8559-1和Windows-1252的文件。 Sublime/Mac上没有文件>打开的文件夹。上面的许多说明都是从“选择文件>打开文件夹”开始的,但这在Sublime/Mac上不存在。 文件比较工作在项目的基础上。如果您想比较两个文件,它们必须保存到磁盘和当前项目的一部分。 打开项目的方法

如果Sublime/Mac没有运行,或者它正在运行但没有打开窗口,将一个文件夹拖到Sublime应用程序上。 如果Sublime/Mac正在运行,选择“File > Open”,导航到所需的文件夹,不要选择文件或文件夹,然后点击“Open”。

Add a folder to a project. If the files you want to compare are not part of the same hierarchy, first open the folder containing one of the files. Then, select "Project > Add Folder to Project", navigate to the folder you want and click "Open". You will now see two root-level folders in your sidebar. The Sidebar must be visible. You can either "View > Side Bar > Show Side Bar" or use the shortcut, Command-K, Command-B. Files must be closed (ie, saved) to compare. Single-clicking a file in the Side Bar does not open the file, but it does display it. You can tell if a file is open if it's listed in the "Open Files" section at the top of the Side Bar. Double-clicking a file or making a modification to a file will automatically change a file's status to "Open". In this case, be sure to close it before trying to compare. Select files from the folder hierarchy. Standard Mac shorcut here, (single) click the first file, then Command-click the second file. When you select the first file, you'll see its contents, but it's not open. Then, when you Command-click the second file, you'll see its contents, but again, neither are open. You'll notice only one tab in the editing panel. Control-click is not the same as right-click. This was the one that got me. I use my trackpad and often resort to Control-click as a right-click or secondary-click. This does not work for me. However, since I configured my trackpad in System Preferences to use the bottom-right corner of my trackpad as a right-click, that worked, displaying the contextual menu, with "Delete", "Reveal in Finder", and.... "Diff Files..."

瞧!

Diff选项仅在文件位于属于项目一部分的文件夹中时才会出现。

然后你就可以在Sublime Text中比较文件了。

通过打开文件夹导航到包含它们的文件夹…或者在一个项目中 在侧栏中选择你想要比较的两个文件(即在Windows上按住Ctrl或在macOS上按住⌘) 右键单击并选择Diff文件…选择。

2017年10月更新 我从来不知道Sublime Text有这个功能,但界面似乎与之前的答案略有变化——至少在OS x上是这样的。下面是我遵循的详细步骤:

在菜单栏单击文件->打开… 导航到包含要比较的文件的文件夹,并与选定的文件夹一起,单击打开按钮,这将使文件夹侧边栏出现 在文件夹侧栏中,单击要比较的第一个文件 按住Windows上的Ctrl或OS X上的⌘,然后单击第二个文件 选中两个文件后,右键单击其中一个并选择Diff files…

这将打开一个显示比较的新选项卡。第一个文件是红色的,第二个是绿色的。

更新(考虑到这些赞,我觉得有必要详细解释一下…)

在菜单栏单击文件->打开文件夹… 选择一个文件夹(实际的文件夹并不重要,这一步只是为了使文件夹侧边栏可用) 如果还没有显示侧栏,让它通过视图->侧栏->显示侧栏显示 使用这个以文件夹为标题的侧栏导航到要比较的第一个文件。 选择它(单击它),按住ctrl并选择第二个文件。 选择了两个文件后,右键单击其中一个文件并选择Diff files…

现在应该有一个新的标签显示比较。


最初的简短回答: 注意:

“Diff文件”只出现在“文件夹”侧栏(打开文件夹:File->打开文件夹),而不是“打开文件”侧栏。