Giter Club home page Giter Club logo

pbkp's Introduction

PBKP - Piman's BacKuP

Description

This is my personal backup utility, used to store the contents of my projects folder in a compressed archive.

This utility produces two kinds of backups: pinned, and relative.

TL;DR Always use pinned backups, unless you want to quickly transfer files.

Pinned

Pinned backups contain all of the files in the target directory. They are meant to be taken regularly, and should be prioritized for restoration.

Relative

Relative backups contain only the files that have changed since a certain pinned backup. They are meant for quick transfer of files between machines, and should not be prioritized for restoration.

NOTE: Relative backups cannot be made with a relative backup as the parent.

WARNING: Relative backups cannot be restored without the parent pinned backup.

Configuration

The configuration file is located at ./config.json. It uses the format:

{
  "targetPath": "", // The path to the folder to be backed up
  "cachePath": "", // The path to the cache folder
  "backupsPath": "", // The path to the backups folder
  "backupName": "", // What to prepend to the backup name
  "bans": {
    "directories": [""], // directories to ignore
    "files": [""], // files to ignore
    "patterns": [""] //patterns (directory/file or directory/directory) to ignore
  }
}

Usage

Requires NodeJS 18.0.0 or higher.

git clone https://github.com/piman51277/pbkp.git
cd pbkp
npm install
npm run build
node out/index.js

pbkp's People

Contributors

piman51277 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.