sp1thas / dropboxignore Goto Github PK
View Code? Open in Web Editor NEWIt's all about the missing .dropboxignore file.
Home Page: https://dropboxignore.simakis.me/?utm=gh
License: GNU General Public License v3.0
It's all about the missing .dropboxignore file.
Home Page: https://dropboxignore.simakis.me/?utm=gh
License: GNU General Public License v3.0
First of all, I applaud you for making this script.
It should be a default feature in DropBox.
Installing en running the script goes well.
Generating .dropignore files based on .gitignore files works like a charm.
BUT..... Dropbox just keeps syncing all files and folders.
At least on my computer, an iMac runnning OSX 10.14.6.
I've also tried running the ignore command, but that always results in :
Total number of ignored files: 0
I've been experimenting with patterns to target certain files and folders and noticed the except pattern is ignored.
Steps to reproduce
Add these lines in .dropboxignore
name_folder/
!name_folder/name_stuff_to_keep
Expected result:
The 'name_folder' should be ignored by DropBox with the exception of files and folders matching 'name_stuff_to_keep' and thus the folder 'name_folder' itself.
I've been experimenting with patterns to target certain files and folders and noticed the except pattern is ignored.
Steps to reproduce
Add these lines in .dropboxignore
name_folder/
!name_folder/name_stuff_to_keep
Expected result:
The 'name_folder' should be ignored by DropBox with the exception of files and folders matching 'name_stuff_to_keep' and thus the folder 'name_folder' itself.
Hello,
Sorry but I am confused.
The .dropboxignore file specifies which files to be ignored by dropbox sync. But is this a (built-in) feature of dropbox? Or is it a feature added by this application (project).
If it's a feature added by this project, I am confused why that isn't explicitly stated in the README (because .dropboxignore is what I was looking for). The CLI tool is nice and all, but all I personally (and probably others) care about is adding stuff to .dropboxignore. Namely,
**/node_modules
in .dropboxignore
in the root directory of all my Node projects.
And I just did, and it works! Amazing!
I also tried genupi
, but it created a plethera of .dropboxignore files. I'd rather not have to put one of those in all my projects.
TLDR: Explain the .dropboxignore
file in README.
See: https://stackoverflow.com/questions/16658333/grep-p-no-longer-works-how-can-i-rewrite-my-searches
Running dropboxignore genupi
on OSX results in multiple outputs of:
usage: grep [-abcDEFGHhIiJLlmnOoqRSsUVvwxZ] [-A num] [-B num] [-C[num]]
[-e pattern] [-f file] [--binary-files=value] [--color=when]
[--context[=num]] [--directories=action] [--label] [--line-buffered]
[--null] [pattern] [file ...]
The grep command is not working because -P
is no longer supported on Mac.
Describe the bug
When using the dropboxignore
CLI on macOS 13.5.2, I get junk characters such as \e[34m
sprinkled around in the output. The result from running the command dropboxignore ignore ./node_modules
for instance, is:
usage: realpath [-q] [path ...]
\e[34mTotal number of ignored files: 0 \e[0m
Total number of ignored folders: 1 \e[0m
To Reproduce
Steps to reproduce the behavior:
Expected behavior
The output should not be full of junk characters.
Desktop (please complete the following information):
Describe the bug
Currently, codecov/codecov-action@v2
is used and because of this the following deprecation warning is raised:
unit (ubuntu-22.04)
The following actions uses node12 which is deprecated and will be forced to run on node16: codecov/codecov-action@v2. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
For this reason, we should upgrade to codecov/codecov-action@v3
Expected behavior
Unittests should be executed without deprecation warnings
Screenshots
I've been waiting for something like this for a very long time. I'm so happy you took the time to implement this. thank you!
However after trying this I keep getting errors.
So I've open Terminal jumped inside my Dropbox folder, and a particular folder inside of that that uses git and has node_modules.
I've tried dropboxignore ignore ~/Dropbox/test
and it returns "/usr/local/bin/dropboxignore: line 572: realpath: command not found"
Also going inside the folder directly and just typing "dropboxignore ignore ." returns the same error.
Using Mac Mini M1 2020
Using dropboxignore I am able to ignore files but not folders.
On creating a new folder inside a dropbox synced folder and ignoring
mkdir test
dropboxignore ignore ./test
The command outputs
Total number of ignored files: 0
Total number of ignored folders: 0
and the folder is not ignored and remains synced to the online repository.
using -v 2
the command outputs
Thu Sep 9 16:46:40 BST 2021 [ DEBUG ] Operating system: Linux
Thu Sep 9 16:46:40 BST 2021 [ DEBUG ] realpath command is installed
Thu Sep 9 16:46:40 BST 2021 [ DEBUG ] attr package is installed
Thu Sep 9 16:46:40 BST 2021 [ DEBUG ] Input folder: "./test"
Total number of ignored files: 0
Total number of ignored folders: 0
I am using Ubuntu 18.04, dropboxignore v1.0.0, dropbox CLI 2020,03.04 and dropbox daeman 130.4.4978.
Any help is greatly appeciated
Describe the bug
All dropboxignore commands seem to invoke Unix commands that possibly behave differently on macOS than on Linux, causing the following error message to be printed to the console repeatedly:
usage: realpath [-q] [path ...]
realpath: illegal option -- -
usage: realpath [-q] [path ...]
realpath: illegal option -- -
usage: realpath [-q] [path ...]
realpath: illegal option -- -
usage: realpath [-q] [path ...]
realpath: illegal option -- -
usage: realpath [-q] [path ...]
realpath: illegal option -- -
usage: realpath [-q] [path ...]
realpath: illegal option -- -
To Reproduce
Steps to reproduce the behavior:
usage: realpath [-q] [path ...]
is printed to the console.Expected behavior
I expect the command to work.
Desktop (please complete the following information):
Help message of dropboxignore should be change to:
Usage: "$PROGRAM_NAME" <command> <path> [-v 0-2] [-p pattern]
Commands:
generate Generate .dropboxignore files based on existing .gitignore files.
update Update existing .dropboxignore files if at least one .gitignore file has been changed.
ignore Ignore file or folder from dropbox under the given path.
list List ignored files and folders under the given path.
revert Revert ignored file or folder under the given path.
delete Delete specific .dropboxignore file or every .dropboxignore file under the given path.
help Will print this message and then will exit.
version Will print the version and then will exit.
Options:
-v Choose verbose level (0: Error, 1: Info, 2: Debug)
-p Filtering pattern (Can be used with list command in order to filter results)
The usage function can be found here
Both unit and integration tests, should be executed in more than one operating system, in particular, should be executed using the following runners: ubuntu-22.04
, ubuntu-20.04
, macos-12
, macos-11
In order to achieve this, run-on
and strategy
on .github/workflows/testing.yaml
should look like this:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ ubuntu-22.04, ubuntu-20.04, macos-12, macos-11 ]
Describe the bug
dropboxignore update
overwrite to .gitignore instead append to .dropboxignore
To Reproduce
Steps to reproduce the behavior:
.gitignore
( if applicable)bin/
and .dropboxignore
files is
bin/
.gitignore
tobin/
foo/
dropboxignore update
Expected behavior
.dropboxignore
change to
bin/
foo/
Actual behavior
.gitignore
change to
foo/
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):
Additional context
The problem should be here
update_dropboxignore_file() {
diff_content=$(diff --new-line-format="" --unchanged-line-format="" --ignore-blank-lines --ignore-tab-expansion --ignore-space-change --ignore-trailing-space -I "# [Automatically|-]" "${1}" "${2}")
if [ -n "$diff_content" ]; then
tee "$1" >/dev/null <<EOF
# Automatically updated .dropboxignore file at "$(date)"
# ----
$diff_content
# ----
EOF
echo -e "$GREEN Updated $(get_relative_path "$2" "$BASE_FOLDER") $DEFAULT"
else
log_debug "No changes found: $(get_relative_path "$2" "$BASE_FOLDER")"
fi
}
should change to
...
tee -a "$2" >/dev/null <<EOF
...
Describe the bug
Run whatever the command with relative path returns errror cat: /usr/local/share/dropboxignore/VERSION.txt: No such file or directory
To Reproduce
Steps to reproduce the behavior:
Desktop (please complete the following information):
Additional context
snap package
As you can see in the README.md file, there are more than one methods to perform the basic installation. The selected method is not respected by install.sh
script because installation script uses wget
to retrieve the dropboxignore
shell script.
This should be changed:
git clone
the whole repo instead of retrieving bin/dropboxingore.sh
script using wget
.git
should be installed in order to install the package using the basic installation way.Does this support on Windows?
is ** pattern supported (any location) ?
Describe the bug
For some reason, coverage report is taking too long in macos-12
, given that is not necessary to generate the coverage report on both ubuntu-22
and macos-12
, a condition should be added in order to skip Coverage Report
pipeline step when using the macos-12
runner.
Expected behavior
Skip coverage report when using macos-12
runner
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.