/TODO (d33d32cf414cfa03218d09b5e35922ee972fc94f) (1536 bytes) (mode 100644) (type blob)
== Critical ==
[ ]
== Non-critical
[ ] Sort dumping by size saved?
[ ] Dump also how much we can save by deleting.
[ ] Ignore empty dirs?
[ ] Warn users in man, to never delete some dirs/files that appear on the
left side. Only from the right.
[ ] dev_ino: use blocks of structs.
[ ] Fix man with regarding the example.
[ ] Add -fno-guess-branch-probability when all braches are tagged.
[ ] Add some progress bar?
[ ] Maybe -v should be the default and -q (--quiet) to be added.
[ ] When big files are hashed, print the file name?
[ ] Lazy compute hash on files. Only if we have a match we will incrementally
compute the checksum.
[ ] Add flags to man pages.
[ ] Adapt man file to recent changes: flags etc.
[ ] Ignore empty files.
[ ] 1-bit fields are not printed as %hhu!
[ ] Because we ignore !dir and !files, we may not have really identical
directories. In one of them we may have a socket, for example.
Add a reporting flag for this situation. Or, do not ignore other
type of files.
[ ] I must document a high level view over "algorithm". Even myself
I do not remember what I am doing...
[ ] Use fadvise to not cache data in RAM.
[ ] Set read-ahead when reading full files.
[ ] Use more threads
[ ] Strange case:
dir1
dir2
dir3=dir4
dir4=dir3
[ ] We could throw away unique files.
[ ] Comparing in O(N*N) sucks! Where?
[ ] Dump in stats also the max memory (peak) used.
[ ] Maybe, for flag 'M', list files that were renamed (cmd line flag).
[ ] Use a cache, specified by command line. Use inode and mtime for key?
Mode |
Type |
Size |
Ref |
File |
100644 |
blob |
20 |
85940595c7c3a70ebc0bd5da9b35bc6b6a16a71a |
.exclude |
100644 |
blob |
105 |
9e50f3bfb5cc392fa65019aef80cab5093162bd2 |
.gitignore |
100644 |
blob |
35147 |
94a9ed024d3859793618152ea559a168bbcbb5e2 |
LICENSE |
100644 |
blob |
957 |
9d84b675b6e914df696c1bc976495b5a66e11d47 |
Makefile.in |
100644 |
blob |
2627 |
9f4bbb9647e9fea4e861fa9a04bf32a716a2da05 |
README |
100644 |
blob |
1536 |
d33d32cf414cfa03218d09b5e35922ee972fc94f |
TODO |
100755 |
blob |
31 |
382d4ea2c0c98b1b25ea01f1e194cfc4990ac527 |
configure |
100755 |
blob |
13704 |
87c4881d7f32f8179d29d86ee17ddbe0f6254c57 |
duilder |
100644 |
blob |
329 |
2b9eeaef703b1b823dd7439257d798b6b72f14b8 |
duilder.conf |
100644 |
blob |
2040 |
22eee88f6126c7effa781bcb8fde0c58ca487731 |
dupdump.1 |
100644 |
blob |
4251 |
692f9be8a9a15e1400596739a5d728557163fe66 |
dupdump.c |
100644 |
blob |
799 |
bb53a32d0101613941ef17372849c795b888e9a2 |
dupdump.spec.in |
100755 |
blob |
205 |
677395e91b18c8272dc795ace0d17ec5610e2d70 |
process.sh |
100644 |
blob |
29992 |
a87737e67f65a86c2c232a2c9b7707f0074e0b18 |
store.c |
100644 |
blob |
2069 |
c0e3cc75373a1748f9a2a9882bca46d435bb6e4a |
store.h |
040000 |
tree |
- |
345d5dbbebbb073edb444b717a63cb23454c2091 |
tests |
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"
Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/catalinux/dupdump
Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/catalinux/dupdump
Clone this repository using git:
git clone git://git.rocketgit.com/user/catalinux/dupdump
You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a
merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main