gitDir property

String? get gitDir

Implementation

String? get gitDir {
  final root = this.root;

  if (root == null) {
    logger.err('Could not find root directory');
    return null;
  }

  var gitDir = fs.directory(p.join(root, '.git'));

  while (!gitDir.childDirectory('.git').existsSync()) {
    final parent = gitDir.parent;

    if (parent.path == gitDir.path) {
      logger.err('Could not find .git directory');
      return null;
    }

    gitDir = parent;
  }

  return gitDir.childDirectory('.git').path;
}