让我成为Eclipse用户的一个特性就是每次点击保存时,它的副本都会进入Eclipse本地历史记录.然后你可以在本地历史上做差异.
尽管如此,我还是想使用Textmate,因为我听到了很多关于它的事情.我知道有一个未来版本的功能请求 ...但我想知道是否有人找到了插件,或者其他一些方法让这个功能现在变成了Textmate?我知道这是一个长期但从来没有伤害过要求.
谢谢.
UPDATE! (编辑问题的标题,因为上一个标题没有兴趣) 我刚刚意识到这可能是一个解决方案.是否可以将Textmate保存挂钩到git提交中?
你想要的是:创建一个新命令,将"保存"设置为"当前文件"(此选项在文本区域上方),"输入"到"整个文档","输出"设置为"显示为工具提示".现在将下面的代码复制到文本区域,并将Command-S指定为命令键绑定.
#!/usr/bin/env ruby
filename = ENV["TM_FILEPATH"].split("/").last
`git add #{ENV["TM_FILEPATH"]}`
`git commit -m "#{filename}"`
Run Code Online (Sandbox Code Playgroud)
每次键入Command-S时,文件都将被保存并提交给(现有的)git存储库.如果文件没有更改,则不会进行任何提交,因为git将阻止提交.
下面我扩展了命令以弹出提交消息的对话框,如果没有找到git存储库,则发出一个很好的警告.你应该能够自己弄清楚其余部分.:)
#!/usr/bin/env ruby
require ENV['TM_SUPPORT_PATH'] + '/lib/ui'
filename = ENV["TM_FILEPATH"].split("/").last
message = TextMate::UI.request_string(
:title => "Commiting changes of #{filename}",
:prompt => "Please enter the commit message for your changes."
)
add = `git add #{ENV["TM_FILEPATH"]} 2>&1`
commit = `git commit -m "#{message}" 2>&1`
git_answer = add + commit
unless git_answer.grep(/fatal/).empty?
puts "Please initialize git repository first!"
end
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1361 次 |
最近记录: |