【问题标题】:File content in Sublime does not change on Git branch changeSublime 中的文件内容在 Git 分支更改时不会更改
【发布时间】:2013-08-20 18:25:42
【问题描述】:

如果在 Sublime text 2 中打开了一个文件,然后切换了对终端中的文件进行更改的分支,则文件内容不会在 Sublime text 2 中更新,直到通过单击选择编辑器。

如何自动神奇地改变它?

【问题讨论】:

  • 这可能是 Sublime Text 中的一个设置,用于控制静默更新编辑器中打开的文件,它应该与 Git 无关。
  • 它们会自动为我改变。您确定您正在查看的特定文件在另一个分支上真的不同吗?尝试 Project -> Refresh Folders,但这不是必需的。
  • @d_rail 澄清了问题。
  • 好的,我也一样。那么它可能是操作系统。其他文本编辑器的行为是否不同?
  • @d_rail 我在 Ubuntu 12.04 上。我没有尝试过其他编辑器。但是,如果我们在 Sublime 上拥有它,这是一个很好的功能,因此是个问题。

标签: git sublimetext2


【解决方案1】:

Sublime Text 没有任何内置方法可以做到这一点。虽然也许 Sublime Text 插件可以通过将forum thread 中的文件刷新插件与Python equivalent to watchr 结合来实现。

This Sublime Forum thread 询问如何使不同选项卡中的文件自动更新,因为 Sublime Text 已经在最前面。提问者找不到让 Sublime Text 做到这一点的方法,但作为一种解决方法,他编写了一个插件,让他们点击热键来重新加载所有打开的标签。

您可以尝试使用相同的原理来解决此问题,方法是创建一个系统范围的热键来切换到 ST2 并返回。对于 Windows,您可以使用 AutoHotkey 或对于 Mac 使用 Quicksilver 或 Keyboard Maestro 来实现热键。它不如自动更新好,但它是下一个最好的东西。每次您希望文件发生更改时,您都可以点击热键。

您甚至可以使用watchr 之类的工具来监视您计划编辑的文件中的更改,并在文件更新时自动触发 AutoHotkey 脚本或 AppleScript 切换到 Sublime Text 并返回。放弃GUI脚本并使用Sublime Text的Python界面重新加载视图而不切换到它会更好,但我不知道Sublime Text是否允许您从应用程序外部的程序在应用程序中运行Python。

【讨论】:

  • 我们可以断定在 Sublime 中不可能吗?
  • @codingcrow 我在“首选项”>“设置 - 默认”中看不到任何相关设置。所以我认为是的,Sublime Text 没有任何内置方法可以做到这一点。虽然也许 Sublime Text 插件可以通过将 forum thread 中的文件刷新插件与 Python equivalent to watchr 结合来实现。
  • @MattDMo 这不是这个问题的目的。您描述了 ST 的行为“如果更改了任何文件……并且您激活了显示文件的选项卡”,但是这个问题 is about 刷新选项卡 不必激活它。
  • @RoryO'Kane 你是对的,我完全错过了。我从this one 来到这个问题,无论任何操作,OP 都无法更新代码。我的坏... cmets 已删除。
【解决方案2】:

我有同样的问题。转到上面的 git 选项卡并手动更改分支。这应该将文件恢复到您想要的任何分支。上面的 git 选项卡无需在终端中输入任何内容即可工作,并且会自动更新来自 sublime 的这些 git 更改。

【讨论】:

    【解决方案3】:

    这仅适用于 Mac 上的 Sublime Text 2 和 3。

    【讨论】:

    • 请重新阅读问题。 OP 正在尝试让更改后的代码在 Sublime 中更新而不重新激活窗口或更改选项卡。 Sublime 的自动重新加载功能仅在您以某种方式与编辑器交互时才有效,它不会自行完成。
    猜你喜欢
    • 1970-01-01
    • 2014-10-24
    • 2014-07-18
    • 2012-07-13
    • 2014-10-08
    • 2018-06-07
    相关资源
    最近更新 更多