package Ġz iel u . git toolbox . bl ame Ċ Ċ import Ġcom . intellij . openapi . diagnostic . Logger Ċ import Ġcom . intellij . openapi . project . Project Ċ import Ġcom . intellij . openapi . vcs . V cs Exception Ċ import Ġcom . intellij . openapi . vcs . history . V cs Revision Number Ċ import Ġcom . intellij . openapi . vfs . Virtual File Ċ import Ġgit 4 idea . Git V cs Ċ import Ġgit 4 idea . repo . Git Repository Ċ import Ġz iel u . git toolbox . cache . Virtual File Repo Cache Ċ import Ġz iel u . git toolbox . revision . Revision Service Ċ Ċ internal Ġclass ĠBl ame Loader Local Gateway ( private Ġval Ġproject : ĠProject ) Ġ{ ĊĠ Ġfun Ġget Repo For File ( v File : ĠVirtual File ): ĠGit Repository ? Ġ{ ĊĠĠĠ Ġreturn ĠVirtual File Repo Cache . getInstance ( project ). get Repo For File ( v File ) ĊĠ Ġ} ĊĊĠ Ġfun Ġget Revision Service (): ĠRevision Service Ġ{ ĊĠĠĠ Ġreturn ĠRevision Service . getInstance ( project ) ĊĠ Ġ} ĊĊĠ Ġfun ĠgetCurrent Revision Number ( repo : ĠGit Repository ): ĠV cs Revision Number Ġ{ ĊĠĠĠ Ġreturn Ġtry Ġ{ ĊĠĠĠĠĠ ĠGit V cs . getInstance ( project ). parse Revision Number ( repo . current Revision ) Ġ?: ĠV cs Revision Number . NULL ĊĠĠĠ Ġ} Ġcatch Ġ( e : ĠV cs Exception ) Ġ{ ĊĠĠĠĠĠ Ġlog . warn (" Could Ġnot Ġget Ġcurrent Ġrepo Revision Ġfor Ġ" Ġ+ Ġrepo . root , Ġe ) ĊĠĠĠĠĠ ĠV cs Revision Number . NULL ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠ Ġprivate Ġval Ġlog Ġ= ĠLogger . getInstance ( Bl ame Loader Local Gateway :: class . java ) ĊĠ Ġ} Ċ } Ċ