A golang port of the nodejs git-mob tool,
go-git-mob
assists with managing co-authors when mob programming.
README
·
CHANGELOG
.
CONTRIBUTING
Report Bug
·
Request Feature
v0.11.1 - 2024-05-06
- prepare-commit-msg script fails when cannot find git mob
- wip up the @not-windows as it's failing (er, passing)
- fix issue where installing godepgraph failed with invalid go version
v0.11.0 - 2024-02-02
- suggest-coauthors accepts filters
- git mob -p prints location of co-authors file
- add preconditions for the install task
- fix typo in tools.go
- set custom sort order for commit groups
- read tool versions from lockfiles
- upgrade to go1.20
- upgrade goreleaser flags
- upgrade goreleaser syntax
- upgrade to go1.19
- add .tool-versions to support asdf-managed golang
- deps: bump ruby/setup-ruby from 1.150.0 to 1.171.0
- deps: bump github.com/onsi/gomega from 1.20.2 to 1.31.1
- deps: bump ruby/setup-ruby from 1.139.0 to 1.150.0
- deps: bump github.com/spf13/cobra from 1.6.1 to 1.7.0
- deps: bump actions/setup-go from 3 to 4
- Merge pull request #132 from davidalpert/sort-release-notes-commit-groups
- Merge pull request #131 from davidalpert/126-filter-suggested-coauthors
- Merge pull request #129 from davidalpert/dependabot/go_modules/github.com/onsi/gomega-1.31.1
- Merge pull request #128 from davidalpert/dependabot/github_actions/ruby/setup-ruby-1.171.0
- Merge pull request #127 from davidalpert/125-print-coauthors-file-location
- Merge pull request #130 from davidalpert/read-tool-versions-from-lockfiles
- Merge pull request #118 from davidalpert/dependabot/go_modules/github.com/spf13/cobra-1.7.0
- Merge pull request #115 from davidalpert/dependabot/github_actions/actions/setup-go-4
- Merge pull request #120 from davidalpert/dependabot/github_actions/ruby/setup-ruby-1.150.0
v0.10.0 - 2023-03-10
- better handling of anonymous github email addresses
- show a nice message when you know all the author suggestions
- coauthor suggestions now filters out known coauthors
- suggest coauthor initials as lowercase
- co-author suggestion feature uses long form
- build the correct cmd/git-mob package on release
- goreleaser script had old make targets
- co-author suggestion format isn't copy/pasteable
- co-author suggestion uses the wrong command
- uninstall can break hook scripts test is non-deterministic
- replace makefile with taskfile
- deps: bump ruby/setup-ruby from 1.133.0 to 1.139.0
- deps: bump github.com/stretchr/testify from 1.8.1 to 1.8.2
- deps: bump ruby/setup-ruby from 1.126.0 to 1.133.0
- deps: bump goreleaser/goreleaser-action from 3 to 4
- deps: bump ruby/setup-ruby from 1.120.0 to 1.126.0
- deps: bump github.com/stretchr/testify from 1.8.0 to 1.8.1
- deps: bump github.com/spf13/cobra from 1.5.0 to 1.6.1
- deps: bump ruby/setup-ruby from 1.117.0 to 1.120.0
- Merge pull request #113 from davidalpert/106-suggesting-coauthors-generates-output-which-is-not-copypastable
- Merge pull request #112 from davidalpert/78-explore-task-and-taskfiles-as-an-alternative-to-makemakefiles
- Merge pull request #109 from davidalpert/dependabot/go_modules/github.com/stretchr/testify-1.8.2
- Merge pull request #111 from davidalpert/dependabot/github_actions/ruby/setup-ruby-1.139.0
- Merge pull request #103 from davidalpert/dependabot/github_actions/goreleaser/goreleaser-action-4
- Merge pull request #104 from davidalpert/dependabot/github_actions/ruby/setup-ruby-1.133.0
- Merge pull request #101 from davidalpert/dependabot/github_actions/ruby/setup-ruby-1.126.0
- Merge pull request #97 from davidalpert/dependabot/go_modules/github.com/spf13/cobra-1.6.1
- Merge pull request #98 from davidalpert/dependabot/go_modules/github.com/stretchr/testify-1.8.1
- Merge pull request #96 from davidalpert/dependabot/github_actions/ruby/setup-ruby-1.120.0
v0.9.2 - 2022-10-25
- fix feature specs to align with #89
- example bug feature
- rename feature file
- added feature spec for expected git-mob behaviour
- #88 co-authors not cleared from message template when returning to git solo
- colons break square brackets, added them before instead
- lint, add period and colon consistency to README.md
- removed instances when .gitmessage is written to during a mob command
- colons break square brackets, added them before instead
- lint, add period and colon consistency to README.md
- rename a feature file
- don't install goreleaser as @latest requires go1.17
- doctor script exit code should reflect doctor status
- Features PR step could pass with errors
- reviewdog token needs write permissions on issues
- deps: bump ruby/setup-ruby from 1.115.3 to 1.117.0
- Merge pull request #94 from davidalpert/88-bug-co-authors-not-cleared-from-message-template-when-returning-to-git-solo
- Merge pull request #89 from teezzan/fix/co-authors_not_cleared_from_message_template_on_switch
- Merge pull request #93 from HugeIRL/fix-readme
- Merge pull request #91 from davidalpert/90-pr-build-is-passing-with-failing-steps
- Merge pull request #87 from davidalpert/dependabot/github_actions/ruby/setup-ruby-1.117.0
v0.9.1 - 2022-09-30
- managing coauthors does not need to be in a working tree
- Merge pull request #86 from davidalpert/bug-coauthor-subcommands-require-being-in-a-repo
v0.9.0 - 2022-09-27
- improve post-install docs
- add shell one-liner to verify that GOPATH bin is in your PATH
- git mob now works outside a working tree
- deps: bump ruby/setup-ruby from 1.114.0 to 1.115.3
- deps: bump github.com/onsi/gomega from 1.20.0 to 1.20.2
- Merge pull request #85 from davidalpert/docs
- Merge pull request #84 from davidalpert/81-go-install-doesnt-put-git-mob-in-my-path
- Merge pull request #83 from davidalpert/82-remove-requirement-for-git-mob-to-be-inside-a-working-copy
- Merge pull request #80 from davidalpert/dependabot/github_actions/ruby/setup-ruby-1.115.3
- Merge pull request #79 from davidalpert/dependabot/go_modules/github.com/onsi/gomega-1.20.2
v0.8.0 - 2022-08-23
- reproduce issue #41
- add support for an @announce-gitmessage tag
- verify duplicate coauthor initials thows error
- write duplicates initials to stderr
- raise error on duplicate coauthors initials
- #41 coauthors accumulate in gitmessage
- extract method to put replaceCoauthors under test
- sentinal error to custom error
- remove @wip tag and clean up whitespace
- Merge pull request #77 from davidalpert/41-bug-gitgitmessage-accumulates-authors
- Merge pull request #76 from davidalpert/45-add-validation-to-git-coauthors-file-to-preventalert-on-duplicate-keys
v0.7.3 - 2022-08-22
- uninstall command can break hook scripts
- fix typo in announced paths
- remove {project}/bin from aruba command_search_paths
- add how-to for showing mob in your shell prompt
- replace explode/implode with rehash/uninstall
- ignore windows/arm64
- downgrade dependencies to go1.16
- Merge pull request #75 from davidalpert/71-feat-add-more-documentation-to-feature-specs
- Merge pull request #72 from davidalpert/70-support-install-with-earlier-golang-versions-eg-117-or-116
v0.7.2 - 2022-08-16
- add issue templates
- ignore missing config keys when getting the current mob
- expose better error detail from underlying git config calls
- return the actual exit code from utils.SilentRun
- Merge pull request #69 from davidalpert/67-getallglobalgit-mobco-author-nonzero-exit-code-1-when-soloing
v0.7.1 - 2022-08-15
- fix broken license badges
- add troubleshooting guidance
- enable @announce-gitmob-log
- log better error detail when SilentRun fails
- print log destination to diagnostics.Log instead of STDOUT
- expose missing output when subprocess exit code is non-zero
- configure dependabot.yml
- deps: bump actions/setup-go from 2 to 3
- deps: bump github.com/onsi/gomega from 1.10.1 to 1.20.0
- deps: bump github.com/stretchr/testify from 1.7.1 to 1.8.0
- deps: bump github.com/spf13/cobra from 1.4.0 to 1.5.0
- deps: bump ruby/setup-ruby from 1.110.0 to 1.114.0
- deps: bump actions/checkout from 2 to 3
- deps: bump goreleaser/goreleaser-action from 2 to 3
- Merge pull request #61 from davidalpert/dependabot/github_actions/actions/checkout-3
- Merge pull request #60 from davidalpert/dependabot/github_actions/goreleaser/goreleaser-action-3
v0.7.0 - 2022-08-14
- --override-author overrides git author for current and future commands
- edit-coauthor lets you edit an existing coauthor
- delete-coauthor removes an existing coauthor by initials
- add-coauthor adds a new coauthor to ~/.git-coauthors
- print added co-authors to the terminal
- improve warning message around commit.template
- error message reversed when adding a coauthor
- remove commented code
- extract the map of shims to it's own file
- standardize feature specs
- improve release notes content
- Merge pull request #58 from davidalpert/improve-release-notes
- Merge pull request #57 from davidalpert/7-feature-overwrite-the-main-author
- Merge pull request #56 from davidalpert/10-feature-edit-co-author
- Merge pull request #55 from davidalpert/9-feature-delete-co-author
- Merge pull request #54 from davidalpert/GH-8-add-co-author
- Merge pull request #53 from davidalpert/GH-47
v0.6.1 - 2022-08-12
- ensure that git mob with no args prints the mob
- ensure that coauthors file exists
- commit templates are stored globally
- git mob with no args should print mob
- format .git-coauthors file
- reorganize code to better match latest git-mob src
- don't remove branchName when workspace is dirty
- go mod tidy with go1.18 found the missing dependencies
- Merge pull request #52 from davidalpert/update-parity
v0.6.0 - 2022-08-07
- update readme to simplify install instructions
- add a git-mob cmd wrapper
- remove build-all target
- align formatting
- inject release notes commit summary into version details
- Merge pull request #51 from davidalpert/rename-installed-cmd
- Merge pull request #50 from davidalpert/commit-version
v0.5.1 - 2022-08-06
- build only once
v0.5.0 - 2022-08-06
- git mob init-all --dry-run
- git mob init-all [base-path]
- clean up RELEASE_NOTES
- clean up language to vale standards
- update binary install instructions
- update go-printers and streamline printing
- factor out go-printers
- ensure that version tags are available for PR builds
- use git-mob as the project name
- allow makefile to override VERSION
- make version detail dependent on source files
- update PR workflow to fail on valedation failures
- clean up diagnostic output when overriding the branch name
- print provided version as a string, not a byte array
- Merge pull request #48 from davidalpert/GH-43-fix-packaged-version
- Merge pull request #49 from davidalpert/refactor-to-use-go-printers
- Merge pull request #40 from davidalpert/init-all
- Merge pull request #38 from davidalpert/use-go-printers
- Merge pull request #37 from davidalpert/errata
v0.4.1 - 2022-07-17
- update installation instructions
- rename github action workflows
- don't need to use branchName when it's 'main'
- assume 'main' branch when rev-list bewteen origin/main and HEAD is 0
- ensure that local main tracks origin/main in a tag build
- dump job context (with event) when building a release
- move version_gen.go into .tools
- simplify release notes commit message
- add test target to document testing push events with act
v0.4.0 - 2022-07-16
- release notes for v0.4.0
- update installation instructions
- update license to match original MIT
- update version command to print semver format
- allow FAST=1 releases
- fix up failing features
- set GIT_CEILING_DIRECTORIES before all features
- generate release notes before running goreleaser
- build before releasing to update the version number
- update url for the conform tool
- git mob outside a working tree should fail
- calculate semantic version at generate, not runtime
- use git CLI instead of go-git for revParse commands
- show better errors when executing setMob
- move SilentRun into a new shell package
- import git step defs from my blog post sample
- enable preview of release notes
- tune goreleaser workflow
- add goreleaser github action
- tune .goreleaser configuration
- goreleaser init
- commit generated version detail when tagging releases
- enhance version_gen.go to accept version params
- add PR workflow
- feature-flag vale validation
- format bundle install output
- show output when installing the bundle
- disable tput and colors in GITHUB_ACTIONS
- go mod tidy
- Merge pull request #36 from davidalpert/32-improve-install-story
- Merge pull request #34 from davidalpert/32-improve-install-story
- Merge pull request #35 from davidalpert/add-license-1
- Merge pull request #33 from davidalpert/4-add-pull-request-validation-and-feedback
v0.3.0 - 2022-06-14
- release notes for v0.3.0
- add reference for BDD via cucumber/aruba
- explain the install/uninstall story
- correct the vale target's help text
- be more assertive about imploding the binary itself
- update branch naming convention
- sketch out initial architectural guidance in README.md
- resolve vale warnings in README.md
- resolve vale warnings in CONTRIBUTING.md
- add link to github project v1.0
- improve setup and contributing guidance
- add/delete/edit-coauthors.spec
- git-suggest-coauthors.spec
- check-author.spec shows warning if primary git author is not set
- git-mob.spec document we don't need to be in a working tree
- git-solo.spec ignores positional arguments
- git-solo.spec removes co-authors from commit template
- git-solo.spec sets the current mob to the primary author
- git-mob.spec document we don't need to be in a working tree
- refactor setup; ensure git mob runs inside an example git repo
- git-mob.spec appends co-authors to a new commit template
- appends co-authors to an existing commit template
- git-mob.spec overwrites old mob when setting a new mob
- git-mob.spec errors when co-author initials not found
- git-mob.spec sets mob and override coauthor
- add a @pending tag
- git-mob.specs sets mob when co-author initials found
- refactor common .git-coauthor setup
- git-mob.specs prints current mob
- git-mob.specs prints only primary author when there is no mob
- git-mob.specs --list print a list of available co-authors
- --version prints version
- git-mob.specs -v prints version
- git-mob.specs --help is an error
- git-mob.spec -h prints help
- prove that amending commits adds coauthors
- ignore featues with an @ignore flag
- set .git/.gitmessage only when inside a working tree
- set .git/.gitmessage as the commit template
- write diagnostic logs to file
- append coauthor to a commit with the message flag
- initialize a local repo with a prepare-commit-msg script
- allow format "text" by the format printers
- add a prepare-commit-msg subcommand
- print commit SHA and a dirty flag (when built from a dirty repo)
- implode/uninstall
- explode/rehash
- suggest co-authors from git history
- list all coauthors
- remove debugging output
- change initials-only to initials
- update path to doctor.sh
- app version is always 0.0.0
- given a simple repo with commits do not create an initial commit
- propagate helper args to the subcommands
- git mob overwrites template instead of appending coauthors
- re-add the 'install' alias
- remove the test .gitmessage path from the version command
- match subcommands on aliases as well as names
- start mob with coauthor who didn't exist would work
- don't need to load the primary user more than once
- reorganize subcommands
- standardize & improve usage text
- replace go-git with git CLI
- collect git paths into a revParse module
- remove duplication in explode.feature
- rearrange suggest subcommand as a coauthors subcommand
- ignore the actual deploy scripts
- build-all before deploying all :rollsafe:
- add a list-ignored target
- add an implode make target
- add explicit gen dependency to build targets
- fix the install target and add an uninstall target
- add valedation into the ci target
- add guard-process to auto-run valedation on md file change
- add valedation as a make target
- add vale config and a set of initial .styles
- add vale as a build requirement
- remove irrelevant scopes
- Merge pull request #31 from HugeIRL/29-fix-initials-flag
- Merge pull request #30 from HugeIRL/patch-1
- Merge pull request #28 from davidalpert/parity-specs
- Merge pull request #27 from davidalpert/24-feat-support-logging-to-a-file
- Merge pull request #26 from davidalpert/23-feat-append-to-commit-message
- Merge pull request #22 from davidalpert/21-refactor-go-git-to-git-cli
- Merge pull request #20 from davidalpert/17-feature-implode
- Merge pull request #19 from davidalpert/16-feature-exploderehash
- Merge pull request #18 from davidalpert/12-document-architecture-and-intended-usage
- Merge pull request #15 from davidalpert/GH-5-integrate-valedation
- Merge pull request #14 from davidalpert/GH-11-suggest-co-authors
- Merge pull request #13 from davidalpert/GH-6-list-all-coauthors
- Merge pull request #3 from davidalpert/GH-2-enhance-contributor-guidelines
v0.2.0 - 2022-05-31
- release notes for v0.2.0
- update .git/.gitmessage when the mob changes
- mob solo
- git mob
- git mob print -i
- mob print
- add step def to create a git repo
- add aruba/cucumber specs
- doctor would constantly regenerate chglog config
- replicate git-authors specs from git-mob
- replace firefly names with git-mob examples
- move Author into the cfg package
- extract env helpers to an env package
- go mod tidy
- add depgraph target
- ignore doctor.sh fixes
- release notes for v0.1.0
- add initial project README
- add basic CLI framework
- add a makefile to tie it all together
- add baseline tool config
- add initial doctor.sh script
- add vscode workspace