sourcegit/src/Commands/QueryStagedFileBlobGuid.cs
leo 96d4150d26 project: reorganize the structure of the project.
* remove dotnet-tool.json because the project does not rely on any dotnet tools.
* remove Directory.Build.props because the solution has only one project.
* move src/SourceGit to src. It's not needed to put all sources into a subfolder of src since there's only one project.
2024-04-02 20:00:33 +08:00

29 lines
738 B
C#

using System.Text.RegularExpressions;
namespace SourceGit.Commands
{
public partial class QueryStagedFileBlobGuid : Command
{
[GeneratedRegex(@"^\d+\s+([0-9a-f]+)\s+.*$")]
private static partial Regex REG_FORMAT();
public QueryStagedFileBlobGuid(string repo, string file)
{
WorkingDirectory = repo;
Context = repo;
Args = $"ls-files -s -- \"{file}\"";
}
public string Result()
{
var rs = ReadToEnd();
var match = REG_FORMAT().Match(rs.StdOut.Trim());
if (match.Success)
{
return match.Groups[1].Value;
}
return string.Empty;
}
}
}