hunk.code_window:       }
         ngCliVersion = `local (v${pkg.version}, branch: ${gitBranch})`;
       }
       const config = CliConfig.fromProject();
       if (config && config.config.project.version !== pkg.version) {
         ngCliVersion += ` [${config.config.project.version}]`;
       }
       if (config && config.config.project.ejected) {
         ngCliVersion += ' (e)';
       }
       if (projPkg) {
         roots.forEach(root => {
  
hunk.labels: keep keep keep keep keep replace replace replace replace replace keep keep keep keep
hunk.after_edit:     if (config && config.config && config.config.project) {
         if (config.config.project.version !== pkg.version) {
           ngCliVersion += ` [${config.config.project.version}]`;
         }
         if (config.config.project.ejected) {
           ngCliVersion += ' (e)';
         }
  
hunk.file_path: packages/@angular/cli/commands/version.ts
hunk.type: replace
file: import {ng} from '../../utils/process';
  import {expectFileToMatch} from '../../utils/fs';
  import {expectGitToBeClean} from '../../utils/git';
  import {expectToFail} from '../../utils/utils';
  import {getGlobalVariable} from '../../utils/env';
  
  
  export default function() {
    // Disable parts of it in webpack tests.
    const ejected = getGlobalVariable('argv').eject;
  
    // Try a prod build.
    return ng('build', '--env=prod')
      .then(() => expectFileToMatch('dist/main.bundle.js', 'production: true'))
      // If this is an ejected test, the eject will create files so git will not be clean.
      .then(() => !ejected && expectGitToBeClean())
  
      // Build fails on invalid build target
      .then(() => expectToFail(() => ng('build', '--target=potato')))
  
      // This is a valid target.
      .then(() => ng('build', '--target=production'));
  }
  