code: function runBlame (file) {
  	const args = [
  		'--no-pager',
  		'blame',
  		'-w',
  		'-C',
  		'-M',
  		'-p',
  		'--contents',
  		'-',
  	];
  	let write;
  
  	if (file.isStream()) {
  		write = (stdin) => {
  			file.contents.pipe(stdin);
  		};
  	} else if (file.isBuffer()) {
  		write = (stdin) => {
  			stdin.write(file.contents);
  			stdin.end();
  		};
  	} else {
  		args.length = 6;
  	}
  
  	args.push('--', file.path);
  
  	const blame = spawn('git', args, {
  		crossSpawn: false,
  		cwd: file.cwd,
  	});
  
  	if (write) {
  		write(blame.cp.stdin);
  		blame.cp.stdin.on('error', () => {
  			// console.error
  		});
  	}
  
  	return blame;
  }
docs: 运行 git blame 命令
  
  @param   {Vinyl}   file      要检查blame信息的文件
  @param   {Boolean} showEmail 是否使用后email代替用户名
  @returns {Promise} 命令运行结果，Buffer