Add an installation instructions section to the README · Entire
Installation
Requires Go 1.26 or newer.
Install the latest release with go install:
go install entire.io/entire/gitsync/cmd/git-sync@latest
This drops a git-sync binary into $(go env GOPATH)/bin. Make sure that directory is on your PATH.
Or build from source:
git clone https://github.com/entireio/gitsync.git
cd gitsync
go build -o git-sync ./cmd/git-sync
Quick Start
git-sync sync \
--source-token "$GITSYNC_SOURCE_TOKEN" \
--target-token "$GITSYNC_TARGET_TOKEN" \
https://github.com/source-org/source-repo.git
Run a replication that overwrites differing target refs, and fail instead of falling back to local materialization:
git-sync replicate \
--stats \
https://github.com/source-org/source-repo.git \
https://github.com/target-org/target-repo.git
For very large initial migrations, add --target-max-pack-bytes to split the initial pack into multiple smaller batches. The same flag works on sync, since sync auto-bootstraps on empty targets:
git-sync sync \
--target-max-pack-bytes 536870912 \
--protocol v2 \
-v
Add --measure-memory to any command to sample elapsed time and Go heap usage:
git-sync sync \
--measure-memory \
--json \
<source-url>
Sync specific branches:
git-sync sync \
--branch main,release \
--source-token "$GITSYNC_SOURCE_TOKEN" \
--target-token "$GITSYNC_TARGET_TOKEN"
Map a source branch to a different target branch:
git-sync sync \
--map main:stable \
<source-url> \
<target-url>
Mirror tags and prune managed target refs that disappeared from source:
git-sync sync \
--tags \
--prune \
<source-url>
Force source-side protocol v2:
git-sync sync \
--protocol v2 \
<source-url> \
<target-url>
Your task
Based on the above changes:
- Create a new branch if on main
- Create a single commit with an appropriate message
- Push the branch to origin
- Create a pull request using
gh pr create
ARGUMENTS: this fixes issue #20