saveRef method

Future<void> saveRef(
  1. Reference ref
)

Implementation

Future<void> saveRef(Reference ref) async {
  var refFileName = p.join(dotGitDir, ref.name.value);
  var refFileName2 = refFileName + '_';

  await fs.directory(p.dirname(refFileName)).create(recursive: true);
  var file = fs.file(refFileName2);
  if (ref.isHash) {
    await file.writeAsString(ref.hash.toString() + '\n', flush: true);
  } else if (ref.isSymbolic) {
    var val = symbolicRefPrefix + ref.target!.value;
    await file.writeAsString(val + '\n', flush: true);
  }
  await file.rename(refFileName);
}