Java Console App for File & Git Management
Budget: $10 – $50 USD
I require a skilled Java developer to implement a console app which must be capable of tracking modifications, additions, and deletions of files, and further synchronize these changes into a specified Git repository.
Key functionalities required:
- on each run of the java app
- Track File Modifications: Monitor alterations and updates performed on specific documents and replicate them within the Git repository.
- Track File Additions: Detect new files added within the specified directories and update the Git repository accordingly.
- Track File Deletions: Sense any file removal and make necessary adjustments in the Git repository.
The java console application must be primarily operable on a Linux system, though it should also function flawlessly on Windows and MacOS by defaulting as Java ability on all operating systems.
Strong Java programming skills, expertise in working with files and Git repositories. Familiarity with file management automation is also desirable. The code needs to be clean, efficient and well-commented to ensure future maintainability.
The process to implement:
1. create new git to a specific folder (configurable via cmd arg "gitdir"), if not already a git local repo there
2. if git is there there, do a git fetch & git pull
3. analyse a set of folders (configurable via cmd arg "datadirs")
4. compare files and folders between datadirs and gitdir
5. replicate datadir into gitdir
6. run git add for all new files
7. run git add for all changed files
8. run git rm for all deleted files
9. run git commit -m "synced <datatime> #issue"
10. run git push
create a self running jar, which is containing all deps and can be executed via cmd
java -jar <yourjar>.jar
For consideration are needed:
- left side (other file system)
- right side
Key functionalities required:
- on each run of the java app
- Track File Modifications: Monitor alterations and updates performed on specific documents and replicate them within the Git repository.
- Track File Additions: Detect new files added within the specified directories and update the Git repository accordingly.
- Track File Deletions: Sense any file removal and make necessary adjustments in the Git repository.
The java console application must be primarily operable on a Linux system, though it should also function flawlessly on Windows and MacOS by defaulting as Java ability on all operating systems.
Strong Java programming skills, expertise in working with files and Git repositories. Familiarity with file management automation is also desirable. The code needs to be clean, efficient and well-commented to ensure future maintainability.
The process to implement:
1. create new git to a specific folder (configurable via cmd arg "gitdir"), if not already a git local repo there
2. if git is there there, do a git fetch & git pull
3. analyse a set of folders (configurable via cmd arg "datadirs")
4. compare files and folders between datadirs and gitdir
5. replicate datadir into gitdir
6. run git add for all new files
7. run git add for all changed files
8. run git rm for all deleted files
9. run git commit -m "synced <datatime> #issue"
10. run git push
create a self running jar, which is containing all deps and can be executed via cmd
java -jar <yourjar>.jar
For consideration are needed:
- left side (other file system)
- right side