Skip to content

Releases: AkashRajpurohit/git-sync

v0.20.0

04 Aug 12:14
bdf3213
Compare
Choose a tag to compare

Changelog

  • 7b0af7d chore: ⬆️ deps upgraded
  • 495b346 chore(deps): update module github.com/google/go-github/v72 to v74 (#125)
  • 17ed03f chore(deps): update module github.com/ktrysmt/go-bitbucket to v0.9.86 (#122)
  • e704de1 chore(deps): update golang docker tag to v1.24.5 (#124)

v0.19.0

08 Jun 02:59
6ebf792
Compare
Choose a tag to compare

What's New!

Nothing much really, we have upgraded the dependencies that the project relies upon as well as included a change which will reduce the docker image size from ~43MB to ~38MB.

Changelog

  • 6ebf792 chore: simplify apk usage in Dockerfile (#114)
  • f1a0f2b chore(deps): upgrade github.com/google/go-github from v71 to v72
  • 87b92ae chore(deps): update module github.com/google/go-github/v71 to v72 (#117)
  • 468a68b chore: ⬆️ upgrade go to 1.24.4
  • 6235d16 chore(deps): update module github.com/ktrysmt/go-bitbucket to v0.9.85 (#113)
  • 698ab17 chore(deps): update module golang.org/x/oauth2 to v0.30.0 (#115)
  • f17ce74 chore(deps): update golang docker tag to v1.24.4 (#116)
  • 11a5fe2 chore: 🚚 code cleanup
  • e85e826 chore: 🔧 go mod tidy
  • eb4b453 chore(deps): update module github.com/ktrysmt/go-bitbucket to v0.9.83 (#112)
  • 007a9dc chore: ♻️ reference to go-github v71
  • f87033a build: ⬆️ go version upgraded to 1.24.2
  • c471765 chore(deps): update module github.com/google/go-github/v70 to v71 (#110)
  • 73025f1 chore(deps): update module github.com/ktrysmt/go-bitbucket to v0.9.82 (#107)
  • 6f60369 chore(deps): update golang docker tag to v1.24.2 (#108)
  • 831ed93 chore(deps): update module golang.org/x/oauth2 to v0.29.0 (#109)
  • d1f9ecc chore(deps): upgrade github.com/google/go-github from v69 to v70 and remove unused dependencies
  • 5d6a24a chore(deps): update module github.com/google/go-github/v69 to v70 (#105)
  • db2388e chore(deps): update module github.com/spf13/viper to v1.20.1 (#104)

v0.18.0

14 Mar 04:33
36692d3
Compare
Choose a tag to compare

What's New!

In this release, we have added support for notifications! So now you can get notified when your sync is complete, or if there are any errors.

Supported Providers

  • Ntfy
  • Gotify
  • (If you want to add another provider, please let me know!)
image

Configuration

You can configure the notifications in the config.yaml file.

notification:
  enabled: true
  only_failures: false
  ntfy:
    topic: 'backup'
    server: 'https://ntfy.sh' # Optional
    username: 'akash' # Optional
    password: 'password' # Optional
    priority: 4 # Optional (1-5)
    tags: ['backup'] # Optional
  gotify:
    url: 'http://localhost:2444'
    app_token: 'your_app_token'
    priority: 4 # Optional (1-5)

Full configuration can be found in our Wiki.

Changelog

  • 36692d3 feat: ✨ notification configuration added
  • 3a26bfc feat(logger): 🔧 add initial fields to logger configuration for app identification
  • 6006220 chore(deps): update Go version to 1.24.1 and upgrade go-github to v69
  • 1572213 chore(deps): update module github.com/spf13/cobra to v1.9.1 (#100)
  • 095c1fb chore(deps): update module github.com/google/go-github/v68 to v69 (#95)
  • 698fe40 chore(deps): update golang docker tag to v1.24.1 (#91)
  • f632107 chore(deps): update module golang.org/x/oauth2 to v0.28.0 (#94)
  • e5e6d1b build: ⬆️ go version upgraded to 1.23.5
  • 55d99ea chore: 🔧 update goreleaser config

v0.17.0

02 Feb 05:00
1036846
Compare
Choose a tag to compare

What's New!

This release adds support for Gitea platform 🎉
More details about the configuration options and example configuration for Gitea can be found in our Wiki.

Changelog

  • 1036846 chore: 🔧 whitelist gitea platform
  • 9207f8b feat: ✨ gitea platform added
  • 177e2b6 feat: ✨ better error handling for invalid configuration

v0.16.0

09 Jan 09:55
fcaf024
Compare
Choose a tag to compare

What's New!

There are sensible defaults added to the configuration in case when you skip some of them. Refer to the configuration options on our Wiki here

Changelog

  • fcaf024 feat: ✨ add sensible defaults
  • ceec51d build(deps): bump golang.org/x/crypto from 0.28.0 to 0.31.0 (#84)
  • e0559e0 fix(deps): ⬆️ update go-github dependency
  • 9a36c62 chore(deps): update module github.com/google/go-github/v67 to v68 (#80)
  • 35fe0cf chore(deps): update module golang.org/x/oauth2 to v0.25.0 (#82)

v0.15.1

23 Dec 08:09
e2e95e9
Compare
Choose a tag to compare

This release fixes a bug from 0.15.0 release. Kindly upgrade to this version.

Release notes from previous release for convenience.

What's New! 🎉

In this release, we have another major improvement on how git-sync handles syncing operation. The major changes are:

  1. Now git-sync will not fail and exit if there is some failure while syncing some repository, instead it can skip it and move ahead with syncing other repositories/wiki's. This is especially very helpful when you are trying to sync large number of repositories and failure in one of them was breaking your entire sync operation.
  2. There is a new config option called retry which will let you specify the retry count and delay. When retry config is present, git-sync will keep attempting to retry a failed sync operation till the max attempts are reached with each attempt having the delay (in seconds). While this option is not required, it is highly advisable to use it. More info about it is available in our Wiki page.

At the end of the operation, we will now show a summary of the number of repositories and wiki's that got synced and the number and name of repositories that failed.

Changelog

  • e2e95e9 fix: 🩹 perform git fetch command inside the retry function

v0.15.0

22 Dec 10:12
9ebbaf6
Compare
Choose a tag to compare

Important ⚠️

Use the version 0.15.1 instead of this which fixes a bug in this release 🙏🏽

What's New! 🎉

In this release, we have another major improvement on how git-sync handles syncing operation. The major changes are:

  1. Now git-sync will not fail and exit if there is some failure while syncing some repository, instead it can skip it and move ahead with syncing other repositories/wiki's. This is especially very helpful when you are trying to sync large number of repositories and failure in one of them was breaking your entire sync operation.
  2. There is a new config option called retry which will let you specify the retry count and delay. When retry config is present, git-sync will keep attempting to retry a failed sync operation till the max attempts are reached with each attempt having the delay (in seconds). While this option is not required, it is highly advisable to use it. More info about it is available in our Wiki page.

At the end of the operation, we will now show a summary of the number of repositories and wiki's that got synced and the number and name of repositories that failed.

Changelog

  • 9ebbaf6 feat: ✨ make sync operation retryable with delay
  • 5075c62 feat: ✨ don't fail if repo clone/update fails, instead skip and move on with next one. Log the stats at the end.
  • c273174 chore: 🔧 add stacktrace only when log level is debug

v0.14.1

20 Dec 07:22
df5deda
Compare
Choose a tag to compare

This release fixes a bug introduced in the previous 0.14.0 release. Please use this version instead of 0.14.0.

Release notes from previous release for convenience.

What's New!

This release majorly helps the users who have a large number of repositories to sync and often run into rate limiting issues.

git-sync now supports passing multiple personal access tokens to avoid this issue. The new option is named tokens in the config file, more details can be found in the Wiki.

For simplicity, the token option is deprecated and will be removed in the future during v1.0 release. You can still use it for now but it's recommended to use the tokens option instead.

Apart from this, you will also start seeing warning logs in the console for any invalid configurations that might cause issue after the release of v1.0, so it is advised to fix them as soon as possible.

Changelog

  • df5deda chore: 🔧 updating log priority for few messages
  • f529232 fix: 🐛 use token manager for sync operations
  • 5438eb2 chore: ♻️ go mod tidy
  • e17435b chore(deps): update module github.com/xanzy/go-gitlab to v0.115.0 (#74)

v0.14.0

20 Dec 04:29
1d90ae4
Compare
Choose a tag to compare

Important ⚠️

Use the version 0.14.1 instead of this which fixes the bug introduced in this release 🙏🏽

What's New!

This release majorly helps the users who have a large number of repositories to sync and often run into rate limiting issues.

git-sync now supports passing multiple personal access tokens to avoid this issue. The new option is named tokens in the config file, more details can be found in the Wiki.

For simplicity, the token option is deprecated and will be removed in the future during v1.0 release. You can still use it for now but it's recommended to use the tokens option instead.

Apart from this, you will also start seeing warning logs in the console for any invalid configurations that might cause issue after the release of v1.0, so it is advised to fix them as soon as possible.

Changelog

  • 2224fed feat: 🩹 fix and add new tests
  • 183d751 feat: ✨ multiple tokens support added
  • 20d9775 chore: 🔧 systemd service example added
  • 1706015 chore: 🔧 update logger initialized message log type

v0.13.0

07 Dec 06:34
146a29f
Compare
Choose a tag to compare

What's New ❕

Control the number of repos being synced concurrently with the new concurrency option in the configuration.
More details can be found in the Wiki.

Changelog

  • 146a29f chore(ci): 🔧 remove sort for changelog generation
  • 130bd62 feat: ✨ add concurrency support