dgit

command module
v0.0.6-alpha Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 16, 2020 License: MIT Imports: 1 Imported by: 0

README

License Contributor Covenant


Logo

dgit

dgit is an open-source project built by [Quorum Control](https://www.tupelo.org/) which combines the power of
git, the [Tupelo DLT](https://docs.tupelo.org/) and [Skynet](https://siasky.net/) from Sia.
dgit uses decentralized ownership and storage to make it trivial to create a decentralized, shareable git remote of your project.
dgit accomplishes this without changing your GitHub workflow except that you can keep collaborating when it goes down.

Built With

Table of Contents

Getting Started

With three simple steps you can create a decentralized mirror of your existing github project. All changes will be automatically propogated to the mirror version and the git services you depend on will be there when you need them.

Installation

A quick install using brew gets us started: brew tap quorumcontrol/dgit && brew install dgit
Or skip the tap and directly install with: brew install quorumcontrol/dgit/dgit

Usage

Next you are going to run the init command in each repo you want to make decentralized: dgit init

This command does three things.

  1. dgit sets the appropriate remote urls in your repo's .git/config file.
  2. dgit creates a ChainTree which gets signed by the Tupelo DLT to specify ownership of the decentralized repo.
  3. dgit stores that repo on Skynet, the decentralized storage solution from Sia.

From there you can proceed with normal git commands.
If you ever want to pull from the mirror you can specify the mirror with a "dgit:".
As an example: git clone dgit://your_username/repo_name
If you want to keep your decentralized, shareable git remote in sync with your GitHub repo adding a simple github rule as illustrated in dgit-github-action is all it takes. Once completed your dgit decentralized shareable remote will always be up to date and ready when you need it.

Building

  • Clone this repo.
  • Run make. Generates ./dgit in top level dir.

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.

Contact

Hop into our developer chat on Telegram: https://t.me/joinchat/IhpojEWjbW9Y7_H81Y7rAA

Project Link: https://github.com/quorumcontrol/dgit

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
transport
tupelo

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL