From 9daa7b06bba3a36a5e44592dd2e34f840a0a3f33 Mon Sep 17 00:00:00 2001 From: Grzegorz Dlugoszewski Date: Wed, 24 Dec 2025 14:50:28 +0100 Subject: [PATCH] Update release process and docs after adding git-get to homebrew-core --- .goreleaser.yml | 42 ++++++++++-------------------------------- README.md | 31 +++++++++++++++++++++++++++++-- 2 files changed, 39 insertions(+), 34 deletions(-) diff --git a/.goreleaser.yml b/.goreleaser.yml index 5170b01..1d37e28 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -11,7 +11,7 @@ builds: main: ./cmd/ binary: git-get ldflags: - - -s -w + - -s -w - -X github.com/grdl/git-get/pkg/cfg.version={{.Version}} - -X github.com/grdl/git-get/pkg/cfg.commit={{.Commit}} goos: @@ -27,7 +27,7 @@ builds: main: ./cmd/ binary: git-get ldflags: - - -s -w + - -s -w - -X github.com/grdl/git-get/pkg/cfg.version={{.Version}} - -X github.com/grdl/git-get/pkg/cfg.commit={{.Commit}} goos: @@ -47,7 +47,7 @@ archives: format_overrides: - goos: windows formats: [zip] - # Don't include any additional files into the archives (such as README, CHANGELOG etc). + # Don't include any additional files into the archives (such as README, CHANGELOG etc). files: - none* - id: macos-archive @@ -57,10 +57,10 @@ archives: formats: - tar.gz files: - - none* + - none* checksum: - name_template: 'checksums.txt' + name_template: "checksums.txt" changelog: disable: true # Changelogs are crafted manually @@ -70,29 +70,6 @@ release: owner: grdl name: git-get -brews: - - name: git-get - ids: - - macos-archive - repository: - owner: grdl - name: homebrew-tap - branch: master - directory: Formula - commit_author: - name: Grzegorz Dlugoszewski - email: git-get@grdl.dev - homepage: https://github.com/grdl/git-get/ - description: Better way to clone, organize and manage multiple git repositories - license: MIT - install: | - bin.install "git-get" - bin.install_symlink "git-get" => "git-list" - man1.install "docs/git-get.1" - test: | - system "#{bin}/git-get", "--version" - system "#{bin}/git-list", "--version" - nfpms: - id: packages package_name: git-get @@ -130,10 +107,11 @@ scoops: homepage: "https://github.com/grdl/git-get" description: "Better way to clone, organize and manage multiple git repositories" license: MIT - post_install: [ - "New-Item -ItemType HardLink -Path \"$dir\\git-list.exe\" -Target \"$dir\\git-get.exe\" -Force | Out-Null", - "scoop shim add git-list \"$dir\\git-list.exe\"" - ] + post_install: + [ + "New-Item -ItemType HardLink -Path \"$dir\\git-list.exe\" -Target \"$dir\\git-get.exe\" -Force | Out-Null", + "scoop shim add git-list \"$dir\\git-list.exe\"", + ] # goreleaser doesn't support pre/post uninstall scripts yet # https://goreleaser.com/customization/scoop/ diff --git a/README.md b/README.md index 1873482..0526e3f 100644 --- a/README.md +++ b/README.md @@ -66,7 +66,7 @@ It provides two commands through a single binary: **Option 1: Homebrew (Recommended)** ```bash -brew install grdl/tap/git-get +brew install git-get ``` *This automatically installs both `git-get` and `git-list` commands.* @@ -106,7 +106,7 @@ sudo ln -sf /usr/local/bin/git-get /usr/local/bin/git-list **Option 3: Homebrew on Linux** ```bash -brew install grdl/tap/git-get +brew install git-get ``` ### Windows @@ -385,6 +385,33 @@ golangci-lint run -v golangci-lint run --fix ``` +### Releasing a New Version + +For maintainers releasing a new version: + +1. **Create and push a new git tag:** + +```bash +git tag v0.7.0 +git push origin v0.7.0 +``` + +2. **GitHub Actions will automatically:** + - Build binaries for all platforms + - Create a GitHub release with assets + - Update the Scoop package + +3. **Update Homebrew-core formula:** + +```bash +# Replace with your actual version +brew bump-formula-pr --tag=v0.7.0 git-get +``` + +This command automatically downloads the new release, calculates checksums, updates the formula, and creates a PR to homebrew-core. + +**Note:** Since git-get is in homebrew-core, the community or Homebrew's automated systems may also update the formula when new releases are detected. + ## License This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details.