Module: Ace::Overseer::Atoms::RepoGuard
- Defined in:
- lib/ace/overseer/atoms/repo_guard.rb
Constant Summary collapse
- MESSAGE =
"ace-overseer must be run inside a git repository or worktree. Change into your project repo and retry."
Class Method Summary collapse
Class Method Details
.ensure_repo!(cwd: Dir.pwd) ⇒ Object
9 10 11 12 13 |
# File 'lib/ace/overseer/atoms/repo_guard.rb', line 9 def self.ensure_repo!(cwd: Dir.pwd) return true if inside_repo?(cwd: cwd) raise Ace::Support::Cli::Error.new(MESSAGE) end |
.inside_repo?(cwd: Dir.pwd) ⇒ Boolean
15 16 17 18 19 20 21 22 |
# File 'lib/ace/overseer/atoms/repo_guard.rb', line 15 def self.inside_repo?(cwd: Dir.pwd) system( "git", "-C", cwd.to_s, "rev-parse", "--is-inside-work-tree", out: File::NULL, err: File::NULL ) rescue SystemCallError false end |