public string getBranch()
{
try
{
var ptr = new FileInfo(Path.Combine(Directory.FullName, Constants.HEAD));
string reference;
using (var sr = new StreamReader(ptr.FullName))
{
reference = sr.ReadLine();
}
if (reference.StartsWith("ref: "))
{
reference = reference.Substring(5);
}
if (reference.StartsWith("refs/heads/"))
{
reference = reference.Substring(11);
}
return reference;
}
catch (FileNotFoundException)
{
var ptr = new FileInfo(Path.Combine(Directory.FullName, "head-name"));
string reference;
using (var sr = new StreamReader(ptr.FullName))
{
reference = sr.ReadLine();
}
return reference;
}
}