Security News
Oracle Drags Its Feet in the JavaScript Trademark Dispute
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
Silo is command-line utility and Ruby API for Git-based backups. With Silo you can backup arbitrary files into one or more Git repositories and take advantage of Git's compression, speed and other features. No Git knowledge needed.
To backup files into a repository Silo uses the well-known and established version control system (VCS) Git. Instead of using Git's frontend commands for the end-user, so called "porcelain" commands, Silo makes use of the more low-level "plumbing" commands. These can be used to write directly to the Git repository, bypassing the automatisms tailored for source code histories.
You can install Silo using RubyGems. This is the easiest way of installing and recommended for most users.
$ gem install silo
If you want to use the development code you can add the following dependency to your Gemfile:
gem 'silo', :git => git://github.com/koraktor/silo.git
If you want to work with the development code you should clone the Git repository:
$ git clone git://github.com/koraktor/silo.git
$ cd silo
$ bundle install
Or even better, create your own fork.
The current status of the development code:
Silo searches for configuration files (.silo
) in the current working
directory, your home directory and your systems global configuration directory
(i.e. /etc on Unix).
They can be used to set Silo-specific options globally or for single directories. That way you may have one general Silo repository for common backups and another Silo repository for e.g. work-related files.
Configuration files are expected in a Git-like format and may contain the following sections and variables:
repository
[repository]
path = /Users/jondoe/backup.git
prefix = work
This would usually save and restore files to and from
/Users/jondoe/backup.git
and save files into the directory work
inside the
repository.
$ silo init [repository path]
$ silo add file [file ...] [--prefix <prefix>]
The prefix allows to organize the files inside the repository.
$ silo restore file [file ...] [--prefix <prefix>]
The prefix is the directory inside your file system where the restored files will be saved.
$ silo remove file [file ...]
$ silo rm file [file ...]
$ silo purge file [file ...] [--no-clean]
This will completely remove the specified files from the repository and thus reduce the required disk space.
WARNING: There's no method built-in to Silo or Git to recover files after purging.
The --no-clean
flag will cause Git commits to persist even after their
contents have been purged.
$ silo remote [-v]
$ silo remote add name url
$ silo remote rm name
Add or remove a remote repository with the specified name. When adding a remote repository the specified location may be given as any location Git understands – including file system paths.
$ silo distribute
$ silo list [file ...] [-l] [-r]
The -l
flag will list each directory and file in a separate line, -r
will
reverse the listing.
$ silo info [file ...] [-v]
The documentation of the Ruby API can be seen at RubyDoc.info. The API documentation of the current development version is also available there.
This code is free software; you can redistribute it and/or modify it under the terms of the new BSD License. A copy of this license can be found in the LICENSE file.
Follow Silo on Twitter @silorb.
FAQs
Unknown package
We found that silo demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
Security News
The Linux Foundation is warning open source developers that compliance with global sanctions is mandatory, highlighting legal risks and restrictions on contributions.
Security News
Maven Central now validates Sigstore signatures, making it easier for developers to verify the provenance of Java packages.