Skip to content

Commit

Permalink
Use global instead of repo
Browse files Browse the repository at this point in the history
  • Loading branch information
felixjung authored and daveshanley committed Oct 8, 2024
1 parent bca5591 commit 3ed9359
Show file tree
Hide file tree
Showing 6 changed files with 19 additions and 19 deletions.
8 changes: 4 additions & 4 deletions cmd/console.go
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ func GetConsoleCommand() *cobra.Command {
doneChan := make(chan bool)
failed := false
latestFlag, _ := cmd.Flags().GetBool("top")
repoRevisionsFlag, _ := cmd.Flags().GetBool("repo-revisions")
globalRevisionsFlag, _ := cmd.Flags().GetBool("global-revisions")
limitFlag, _ := cmd.Flags().GetInt("limit")
limitTimeFlag, _ := cmd.Flags().GetInt("limit-time")
baseFlag, _ := cmd.Flags().GetString("base")
Expand Down Expand Up @@ -206,7 +206,7 @@ func GetConsoleCommand() *cobra.Command {

go listenForUpdates(updateChan, errorChan)

commits, errs := runGitHistoryConsole(args[0], args[1], latestFlag, repoRevisionsFlag, limitFlag, limitTimeFlag,
commits, errs := runGitHistoryConsole(args[0], args[1], latestFlag, globalRevisionsFlag, limitFlag, limitTimeFlag,
updateChan, errorChan, baseFlag, remoteFlag)

// wait.
Expand Down Expand Up @@ -302,7 +302,7 @@ func runGithubHistoryConsole(username, repo, filePath string, latest bool, limit
return commitHistory, nil
}

func runGitHistoryConsole(gitPath, filePath string, latest bool, repoRevisions bool, limit int, limitTime int,
func runGitHistoryConsole(gitPath, filePath string, latest bool, globalRevisions bool, limit int, limitTime int,
updateChan chan *model.ProgressUpdate, errorChan chan model.ProgressError, base string, remote bool) ([]*model.Commit, []error) {

if gitPath == "" || filePath == "" {
Expand All @@ -316,7 +316,7 @@ func runGitHistoryConsole(gitPath, filePath string, latest bool, repoRevisions b
filePath, gitPath), false, updateChan)

// build commit history.
commitHistory, err := git.ExtractHistoryFromFile(gitPath, filePath, updateChan, errorChan, repoRevisions, limit, limitTime)
commitHistory, err := git.ExtractHistoryFromFile(gitPath, filePath, updateChan, errorChan, globalRevisions, limit, limitTime)

if err != nil {
close(updateChan)
Expand Down
8 changes: 4 additions & 4 deletions cmd/html_report.go
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ func GetHTMLReportCommand() *cobra.Command {
noColorFlag, _ := cmd.Flags().GetBool("no-color")
cdnFlag, _ := cmd.Flags().GetBool("use-cdn")
latestFlag, _ := cmd.Flags().GetBool("top")
repoRevisionsFlag, _ := cmd.Flags().GetBool("repo-revisions")
globalRevisionsFlag, _ := cmd.Flags().GetBool("global-revisions")
limitFlag, _ := cmd.Flags().GetInt("limit")
limitTimeFlag, _ := cmd.Flags().GetInt("limit-time")
remoteFlag, _ := cmd.Flags().GetBool("remote")
Expand Down Expand Up @@ -228,7 +228,7 @@ func GetHTMLReportCommand() *cobra.Command {
go listenForUpdates(updateChan, errorChan)

report, _, er := RunGitHistoryHTMLReport(args[0], args[1], latestFlag, cdnFlag,
updateChan, errorChan, baseFlag, remoteFlag, repoRevisionsFlag, limitFlag, limitTimeFlag)
updateChan, errorChan, baseFlag, remoteFlag, globalRevisionsFlag, limitFlag, limitTimeFlag)
<-doneChan
if er != nil {
for x := range er {
Expand Down Expand Up @@ -305,7 +305,7 @@ func ExtractGithubDetailsFromURL(url *url.URL) (string, string, string, error) {
}

func RunGitHistoryHTMLReport(gitPath, filePath string, latest, useCDN bool,
progressChan chan *model.ProgressUpdate, errorChan chan model.ProgressError, base string, remote bool, repoRevisions bool, limit int, limitTime int) ([]byte, []*model.Report, []error) {
progressChan chan *model.ProgressUpdate, errorChan chan model.ProgressError, base string, remote bool, globalRevisions bool, limit int, limitTime int) ([]byte, []*model.Report, []error) {
if gitPath == "" || filePath == "" {
err := errors.New("please supply a path to a git repo via -r, and a path to a file via -f")
model.SendProgressError("reading paths",
Expand All @@ -315,7 +315,7 @@ func RunGitHistoryHTMLReport(gitPath, filePath string, latest, useCDN bool,
}

// build commit history.
commitHistory, err := git.ExtractHistoryFromFile(gitPath, filePath, progressChan, errorChan, repoRevisions, limit, limitTime)
commitHistory, err := git.ExtractHistoryFromFile(gitPath, filePath, progressChan, errorChan, globalRevisions, limit, limitTime)
if err != nil {
model.SendFatalError("extraction",
fmt.Sprintf("cannot extract history %s", errors.Join(err...)), errorChan)
Expand Down
8 changes: 4 additions & 4 deletions cmd/report.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ func GetReportCommand() *cobra.Command {
doneChan := make(chan bool)
failed := false
latestFlag, _ := cmd.Flags().GetBool("top")
repoRevisionsFlag, _ := cmd.Flags().GetBool("repo-revisions")
globalRevisionsFlag, _ := cmd.Flags().GetBool("global-revisions")
limitFlag, _ := cmd.Flags().GetInt("limit")
limitTimeFlag, _ := cmd.Flags().GetInt("limit-time")
baseFlag, _ := cmd.Flags().GetString("base")
Expand Down Expand Up @@ -155,7 +155,7 @@ func GetReportCommand() *cobra.Command {
go listenForUpdates(updateChan, errorChan)

report, er := runGitHistoryReport(args[0], args[1], latestFlag, updateChan, errorChan, baseFlag,
remoteFlag, repoRevisionsFlag, limitFlag, limitTimeFlag)
remoteFlag, globalRevisionsFlag, limitFlag, limitTimeFlag)

<-doneChan

Expand Down Expand Up @@ -226,7 +226,7 @@ func GetReportCommand() *cobra.Command {
}

func runGitHistoryReport(gitPath, filePath string, latest bool,
updateChan chan *model.ProgressUpdate, errorChan chan model.ProgressError, base string, remote bool, repoRevisions bool, limit int, limitTime int) (*model.HistoricalReport, []error) {
updateChan chan *model.ProgressUpdate, errorChan chan model.ProgressError, base string, remote bool, globalRevisions bool, limit int, limitTime int) (*model.HistoricalReport, []error) {

if gitPath == "" || filePath == "" {
err := errors.New("please supply a path to a git repo via -r, and a path to a file via -f")
Expand All @@ -240,7 +240,7 @@ func runGitHistoryReport(gitPath, filePath string, latest bool,
filePath, gitPath), false, updateChan)

// build commit history.
commitHistory, err := git.ExtractHistoryFromFile(gitPath, filePath, updateChan, errorChan, repoRevisions, limit, limitTime)
commitHistory, err := git.ExtractHistoryFromFile(gitPath, filePath, updateChan, errorChan, globalRevisions, limit, limitTime)
if err != nil {
model.SendProgressError("git", fmt.Sprintf("%d errors found building history", len(err)), errorChan)
close(updateChan)
Expand Down
2 changes: 1 addition & 1 deletion cmd/root.go
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ func init() {
rootCmd.AddCommand(GetHTMLReportCommand())
rootCmd.PersistentFlags().BoolP("top", "t", false, "Only show latest changes (last git revision against HEAD)")
rootCmd.PersistentFlags().IntP("limit", "l", 5, "Limit history to number of revisions (default is 5)")
rootCmd.PersistentFlags().BoolP("repo-revisions", "R", false, "Consider all revisions in limit, not just the ones for the file")
rootCmd.PersistentFlags().BoolP("global-revisions", "R", false, "Consider all revisions in limit, not just the ones for the file")
rootCmd.PersistentFlags().IntP("limit-time", "d", -1, "Limit history to number of days. Supersedes limit argument if present.")
rootCmd.PersistentFlags().BoolP("no-logo", "b", false, "Don't print the big purple pb33f banner")
rootCmd.PersistentFlags().StringP("base", "p", "", "Base URL or path to use for resolving relative or remote references")
Expand Down
8 changes: 4 additions & 4 deletions cmd/summary.go
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ func GetSummaryCommand() *cobra.Command {
baseFlag, _ := cmd.Flags().GetString("base")
latestFlag, _ := cmd.Flags().GetBool("top")
noColorFlag, _ := cmd.Flags().GetBool("no-color")
repoRevisionsFlag, _ := cmd.Flags().GetBool("repo-revisions")
globalRevisionsFlag, _ := cmd.Flags().GetBool("global-revisions")
limitFlag, _ := cmd.Flags().GetInt("limit")
limitTimeFlag, _ := cmd.Flags().GetInt("limit-time")
remoteFlag, _ := cmd.Flags().GetBool("remote")
Expand Down Expand Up @@ -228,7 +228,7 @@ func GetSummaryCommand() *cobra.Command {
go listenForUpdates(updateChan, errorChan)

err = runGitHistorySummary(args[0], args[1], latestFlag, updateChan, errorChan,
baseFlag, remoteFlag, markdownFlag, repoRevisionsFlag, limitFlag, limitTimeFlag)
baseFlag, remoteFlag, markdownFlag, globalRevisionsFlag, limitFlag, limitTimeFlag)

<-doneChan

Expand Down Expand Up @@ -392,7 +392,7 @@ func runGithubHistorySummary(username, repo, filePath string, latest bool, limit
}

func runGitHistorySummary(gitPath, filePath string, latest bool,
updateChan chan *model.ProgressUpdate, errorChan chan model.ProgressError, base string, remote, markdown bool, repoRevisions bool, limit int, limitTime int) error {
updateChan chan *model.ProgressUpdate, errorChan chan model.ProgressError, base string, remote, markdown bool, globalRevisions bool, limit int, limitTime int) error {
if gitPath == "" || filePath == "" {
err := errors.New("please supply a path to a git repo via -r, and a path to a file via -f")
model.SendProgressError("git", err.Error(), errorChan)
Expand All @@ -404,7 +404,7 @@ func runGitHistorySummary(gitPath, filePath string, latest bool,
filePath, gitPath), false, updateChan)

// build commit history.
commitHistory, errs := git.ExtractHistoryFromFile(gitPath, filePath, updateChan, errorChan, repoRevisions, limit, limitTime)
commitHistory, errs := git.ExtractHistoryFromFile(gitPath, filePath, updateChan, errorChan, globalRevisions, limit, limitTime)
if errs != nil {
model.SendProgressError("git", fmt.Sprintf("%d errors found extracting history", len(errs)), errorChan)
close(updateChan)
Expand Down
4 changes: 2 additions & 2 deletions git/read_local.go
Original file line number Diff line number Diff line change
Expand Up @@ -60,11 +60,11 @@ func GetTopLevel(dir string) (string, error) {
}

func ExtractHistoryFromFile(repoDirectory, filePath string,
progressChan chan *model.ProgressUpdate, errorChan chan model.ProgressError, repoRevisions bool, limit int, limitTime int) ([]*model.Commit, []error) {
progressChan chan *model.ProgressUpdate, errorChan chan model.ProgressError, globalRevisions bool, limit int, limitTime int) ([]*model.Commit, []error) {

args := []string{NOPAGER, LOG, LOGFORMAT}

if limit > 0 && repoRevisions {
if limit > 0 && globalRevisions {
args = append(args, fmt.Sprintf("HEAD~%d..HEAD", limit))
} else if limit > 0 {
args = append(args, NUMBER, strconv.Itoa(limit))
Expand Down

0 comments on commit 3ed9359

Please sign in to comment.