public static string GetSubmoduleText(GitModule superproject, string name, string hash) { StringBuilder sb = new StringBuilder(); sb.AppendLine("Submodule " + name); sb.AppendLine(); GitModule module = superproject.GetSubmodule(name); if (module.IsValidGitWorkingDir()) { // TEMP, will be moved in the follow up refactor ICommitDataManager commitDataManager = new CommitDataManager(() => module); string error = ""; CommitData data = commitDataManager.GetCommitData(hash, ref error); if (data == null) { sb.AppendLine("Commit hash:\t" + hash); return(sb.ToString()); } string header = PlainCommitDataHeaderRenderer.RenderPlain(data); string body = "\n" + data.Body.Trim(); sb.AppendLine(header); sb.Append(body); } else { sb.AppendLine("Commit hash:\t" + hash); } return(sb.ToString()); }
public static string GetSubmoduleText(GitModule superproject, string name, string hash, bool cache) { var sb = new StringBuilder(); sb.AppendLine("Submodule " + name); sb.AppendLine(); GitModule module = superproject.GetSubmodule(name); // Submodule directory must exist to run commands, unknown otherwise if (module.IsValidGitWorkingDir()) { // TEMP, will be moved in the follow up refactor ICommitDataManager commitDataManager = new CommitDataManager(() => module); CommitData?data = commitDataManager.GetCommitData(hash, out _, cache); if (data is null) { sb.AppendLine("Commit hash:\t" + hash); return(sb.ToString()); } string header = PlainCommitDataHeaderRenderer.RenderPlain(data); string body = "\n" + data.Body.Trim(); sb.AppendLine(header); sb.Append(body); } else { sb.AppendLine("Commit hash:\t" + hash); } return(sb.ToString()); }