Go to file
Mateusz P-K f6002311cd
Improve --single-directory sync performance (#992)
* Remove erroneous 'return' statement which could prematurely end processing all changes returned from OneDrive
* Improve --single-directory sync performance

This commit modifies code inside applyDifferences function,
the part responsible for deleting changes/moving them out
of the selected sync directories. This change makes an HTTP
request responsible for checking whether a changed item still
exists on OneDrive only be sent only if it may in fact influence
whether an item will be deleted from the synced folder or not
or just discarded.

This makes an enormous performance boost, because it limits
redundant HTTP requests that ask about changed items that will
be discarded or not.

Signed-off-by: Mateusz P-K <mateusz.kaplon@gmail.com>
2020-07-21 15:19:41 +10:00
.github Update bug_report.md 2020-06-29 09:36:57 +10:00
contrib Fish Tab Auto-completions (#991) 2020-07-09 16:05:48 +10:00
docs Update installation instructions for NixOS (#981) 2020-07-04 05:53:24 +10:00
src Improve --single-directory sync performance (#992) 2020-07-21 15:19:41 +10:00
tests Update makefiles.sh 2019-01-06 09:49:01 +11:00
.gitignore Update RPM spec file (Issue #871) (#873) 2020-04-19 06:24:35 +10:00
.travis-ci.sh Fix Codacy issues (#881) 2020-04-22 13:23:15 +10:00
.travis.yml Update Travis CI building to test build on ARM64 (Issue #95) (#177) 2018-10-04 09:22:49 +10:00
aclocal.m4 autoconf based build system (#287) 2019-04-17 11:06:24 +10:00
CHANGELOG.md Release files for 2.4.3 (#970) 2020-06-29 08:05:45 +10:00
config Implement OneDrive Business Shared Folders Support (Issue #459) (#473) 2020-06-27 19:10:37 +10:00
configure Fish Tab Auto-completions (#991) 2020-07-09 16:05:48 +10:00
configure.ac Release 2.4.4 Development Prep (#974) 2020-06-29 08:46:50 +10:00
install-sh autoconf based build system (#287) 2019-04-17 11:06:24 +10:00
LICENSE added readme and license 2015-09-22 18:31:10 +02:00
Makefile.in Fish Tab Auto-completions (#991) 2020-07-09 16:05:48 +10:00
onedrive.1.in Release files for 2.4.3 (#970) 2020-06-29 08:05:45 +10:00
README.md Update README.md 2020-06-27 19:18:12 +10:00

OneDrive Client for Linux

Version Release Date Travis CI Docker Build Docker Pulls

A free Microsoft OneDrive Client which supports OneDrive Personal, OneDrive for Business, OneDrive for Office365 and Sharepoint.

This powerful and highly configurable client can run on all major Linux distributions, as a Docker container and on FreeBSD. It supports one-way and two-way sync capabilities and securely connects to Microsoft OneDrive services.

This client is a 'fork' of the skilion client which was abandoned in 2018.

Features

  • State caching
  • Real-Time file monitoring with Inotify
  • File upload / download validation to ensure data integrity
  • Resumable uploads
  • Support OneDrive for Business (part of Office 365)
  • Shared Folder support for OneDrive Personal and OneDrive Business accounts
  • SharePoint / Office365 Shared Libraries
  • Desktop notifications via libnotify
  • Dry-run capability to test configuration changes
  • Prevent major OneDrive accidental data deletion after configuration change
  • Support for National cloud deployments (Microsoft Cloud for US Government, Microsoft Cloud Germany, Azure and Office 365 operated by 21Vianet in China)

What's missing

  • While local changes are uploaded right away, remote changes are delayed until next sync when using --monitor
  • No GUI

Building and Installation

See docs/INSTALL.md

Configuration and Usage

See docs/USAGE.md

Docker support

See docs/Docker.md

OneDrive Business Shared Folders

See docs/BusinessSharedFolders.md

SharePoint / Office 365 Shared Libraries (Business or Education)

See docs/Office365.md

National Cloud support

See docs/national-cloud-deployments.md

Reporting issues

If you encounter any bugs you can report them here on Github. Before filing an issue be sure to:

  1. Check the version of the application you are using onedrive --version and ensure that you are running either the latest release or built from master.
  2. Fill in a new bug report using the issue template
  3. Generate a debug log for support using the following process
  4. Upload the debug log to pastebin or archive and email to support@mynas.com.au

Known issues

See docs/known-issues.md