Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/sp1thas/dropboxignore

[MIRROR OF https://codeberg.org/sp1thas/dropboxignore] It's all about the missing .dropboxignore file.
https://github.com/sp1thas/dropboxignore

bash cli dropbox dropboxignore glob-patterns ignore-files ignore-folders linux shell shell-script

Last synced: about 8 hours ago
JSON representation

[MIRROR OF https://codeberg.org/sp1thas/dropboxignore] It's all about the missing .dropboxignore file.

Awesome Lists containing this project

README

        


dropboxignore


dropboxignore-logo

It's all about the missing .dropboxignore file.



pre-commit.ci status





dropboxignore

Google code style
Installation counter


[Installation](#installation) •
[Getting started](#getting-started) •
[CLI](#cli) •
[How to Contribute](#how-to-contribute)

This CLI shell script aims to take advantage of glob patterns and existing `.gitignore` files in order to exclude specific
folders and files from dropbox sync. The shell script uses
[this recent](https://help.dropbox.com/files-folders/restore-delete/ignored-files) approach to ignore folders and files.

## Installation

### Using the kickstart script

dropboxignore is installed by running one of the following commands in your terminal. You can install this via the command-line with either curl, wget or another similar tool. `attr` and `git` should be installed on your system, as well as Homebrew if you are on macOS.

| Method | Command |
|--------|----------------------------------------------------------------|
| curl | sudo sh -c "$(curl -fsSL https://rb.gy/nnp9p9)" c |
| wget | sudo sh -c "$(wget -qO- https://rb.gy/nnp9p9)" w |

Worried about mysterious shorted urls like? Take a look at the installation script here: [`https://rb.gy/nnp9p9 --> https://codeberg.org/sp1thas/dropboxignore/raw/branch/master/src/utils/install.sh`](https://codeberg.org/sp1thas/dropboxignore/raw/branch/master/src/utils/install.sh))
### Snap

[![Get it from the Snap Store](https://snapcraft.io/static/images/badges/en/snap-store-white.svg)](https://snapcraft.io/dropboxignore)

```shell
$ snap install dropboxignore
```

### Flatpak

```shell
$ flatpak install flathub me.simakis.dropboxignore
```

### From source
```shell
$ git clone https://codeberg.org/sp1thas/dropboxignore.git
$ cd dropboxignore
$ make test # optional step, Docker and docker-compose should be installed
$ sudo make install
```

### Uninstall
```shell
$ sudo make uninstall
```

## Getting started

`dropboxignore` is a CLI tool which supports a collection of commands in order to make your life easier when it comes
to exclude files or/and folders from :material-dropbox: dropbox sync. Below you will find some common usecases.

### A typical workflow

A common workflow could be the following:

1. Automatically generate `.dropboxignore` files based on existing `.gitignore` files.
2. Manually update or create `.dropboxignore` files (Optional).
3. Ignore matched files based on .dropboxignore files.

and you can run this flow by running the following command:

```shell
$ dropboxignore genupi .
```

**Warning:** In order to prevent unpleasant data losses, exception patterns are not supported. Both `.gitignore` and
`.dropboxignore` files with at least one exceptional pattern will be bypassed (for further details:
[#3](https://codeberg.org/sp1thas/dropboxignore/issues/3)).

**Note:** Automatic generation of `.dropboxignore` files is an optional step, therefore, may not be a necessary action
for your case.

### Long story short

[Here](https://dropboxignore.simakis.me/getting-started/#long-story-short) you can find some of the most common cases
that dropboxignore could be useful.

## CLI

[Here](https://dropboxignore.simakis.me/cli/?utm=gh) you will find extensive documentation about the dropboxignore command line
interface.

## How to contribute

If you want to contribute, read the [contribution guideline](https://dropboxignore.simakis.me/contributing/?utm=gh) for
further details.

---

*Logo is based on [papirus-icon-theme](https://github.com/PapirusDevelopmentTeam/papirus-icon-theme)