anchor.diff:  
     Future releaseStart(String releaseName) =>
         executeTask('git flow release start', () async {
  -        await gitFlowReleaseStart(await p.gitDir, releaseName);
  +        await gitFlowReleaseStart(await _project.gitDir, releaseName);
         });
   
     Future releaseFinish(String releaseName) =>
         executeTask('git flow release finish', () async {
  -        var gitDir = await p.gitDir;
  +        var gitDir = await _project.gitDir;
           await gitFlowReleaseFinish(gitDir, releaseName);
           await gitTag(gitDir, releaseName);
           await gitPush(gitDir);
  
positive.code:   @override
    Future<Iterable<Version>> getReleaseVersionTags() =>
        executeTask('fetch git release version tags', () async {
          final gitDir = await p.gitDir;
          return await gitFetchVersionTags(gitDir);
        });
  
    @override
    Future assertNoActiveReleases() =>
        executeTask('check no active releases', () async {
          final releaseNames = await gitFlowReleaseNames(await p.gitDir);
          if (releaseNames.isNotEmpty) {
            throw new StateError(
                '${p.name} has an existing release branch. Must finish all active releases first');
          }
        });
  }
  
negative.code: import 'package:logging/logging.dart';
  import 'package:option/option.dart';
  import 'package:pub_semver/pub_semver.dart';
  import 'package:jefe/src/project/jefe_project.dart';
  
  Logger _log = new Logger('jefe.project.commands.git.feature.impl');
  
  class GitFeatureCommandsFlowImpl implements GitFeatureCommands {
    final JefeProject _project;
    GitFeatureCommandsFlowImpl(this._project);
  
    Future init() => executeTask('git flow init', () async {
          await initGitFlow(await _project.gitDir);
        });
  
    Future featureStart(String featureName, {bool throwIfExists: false}) =>
        executeTask('git flow feature start', () async {
          final gitDir = await _project.gitDir;
          if (!throwIfExists) {
            Future<bool> checkoutFeatureBranchIfExists() async {
              final Iterable<String> featureNames =
  