Open Source Continuous File Synchronization
Go to file
Jakob Borg 3c4002e149 Merge branch 'v0.8'
* v0.8:
  Don't leak writer and index goroutines on close
  Clean up protocol locking and closing
  Send initial index in batches
  Always send initial index, even if empty (ref #344)
  Simplify locking in protocol.Index
  Protocol state machine on receiving side
  Log client version on connect
  Handle query parameters in UPnP control URL (fixes #211)
  Avoid deadlock during initial scan (fixes #389)
  Add temporary debug logging for #344 (revert later)
  Tone down UPnP not found message (fixes #406)
2014-07-04 15:16:41 +02:00
assets Refactor logo (fixes #403) 2014-07-01 22:20:18 +02:00
auto Refactor node ID handling, use check digits (fixes #269) 2014-06-30 01:42:03 +02:00
beacon Simplify memory handling 2014-06-19 01:02:32 +02:00
cid Refactor node ID handling, use check digits (fixes #269) 2014-06-30 01:42:03 +02:00
cmd Merge branch 'v0.8' 2014-07-04 15:16:41 +02:00
config Refactor node ID handling, use check digits (fixes #269) 2014-06-30 01:42:03 +02:00
discover Improve XDR performance 2014-06-30 13:35:48 +02:00
files Add temporary debug logging for #344 (revert later) 2014-07-01 17:08:14 +02:00
Godeps Detect deadlock in model and panic 2014-06-21 12:35:53 +02:00
gui Refactor node ID handling, use check digits (fixes #269) 2014-06-30 01:42:03 +02:00
integration Refactor node ID handling, use check digits (fixes #269) 2014-06-30 01:42:03 +02:00
lamport Add license header 2014-06-01 22:50:14 +02:00
logger Logger should use stdout instead of stderr 2014-06-23 21:57:22 +02:00
luhn Refactor node ID handling, use check digits (fixes #269) 2014-06-30 01:42:03 +02:00
model Merge branch 'v0.8' 2014-07-04 15:16:41 +02:00
osutil Add license header 2014-06-01 22:50:14 +02:00
protocol Merge branch 'v0.8' 2014-07-04 15:16:41 +02:00
scanner Remove spurious debug output in .stignore handling 2014-06-23 21:54:28 +02:00
upnp Handle query parameters in UPnP control URL (fixes #211) 2014-07-02 20:28:03 +02:00
versioner Add license header 2014-06-01 22:50:14 +02:00
xdr Improve XDR performance 2014-06-30 13:35:48 +02:00
.gitignore Remove reprecated st* utils 2014-07-01 12:20:25 +02:00
.travis.yml Forget go1.2 2014-06-12 02:28:03 +02:00
build.sh Remove reprecated st* utils 2014-07-01 12:20:25 +02:00
CONTRIBUTING.md Links to discourse 2014-04-30 15:14:42 +02:00
CONTRIBUTORS Allow prioritization of downloads based on name (fixes #174) 2014-06-08 07:16:25 +02:00
LICENSE Add licensing and contribution info 2014-03-24 14:57:14 +01:00
README.md Fix embarrasing badge :) 2014-06-10 17:23:00 +02:00

syncthing Build Status Coverage Status

This is the syncthing project. The following are the project goals:

  1. Define a protocol for synchronization of a file repository between a number of collaborating nodes. The protocol should be well defined, unambiguous, easily understood, free to use, efficient, secure and language neutral. This is the Block Exchange Protocol.

  2. Provide the reference implementation to demonstrate the usability of said protocol. This is the syncthing utility. It is the hope that alternative, compatible implementations of the protocol will come to exist.

The two are evolving together; the protocol is not to be considered stable until syncthing 1.0 is released, at which point it is locked down for incompatible changes.

Getting Started

Take a look at the getting started guide.

Signed Releases

As of v0.7.0 and onwards, git tags and release binaries are GPG signed with the key BCE524C7 (http://nym.se/gpg.txt). The signature is included in the normal release bundle as syncthing.asc or syncthing.exe.asc.

Documentation

The syncthing documentation is on the discourse site.

License

All documentation and protocol specifications are licensed under the Creative Commons Attribution 4.0 International License.

All code is licensed under the MIT License.