Package: gpip
gpipis a package installer utility for GitHub public and private repositories, is a way to replace thecopy-pasteproblem for individuals or organizations that have code inside repositories but cannot make it public, withgpipyou can handle a repository with more than one package and have versioning and other capabilities.FeaturesInstall packages from private or public repositoriesAllow to use versioning, branch and path location from repositoriesEasy and powerfull syntax to declare packages.Command Line interface similar topipandgoQuickstartInstall the latest version of gpip in your globalpiprepository orvirtualenvif you haven’t installed it yet.pip3installgpipInstall your private/public packages directly fromGitHubgpipgetgithub.com/username/repository/path:package-nameYou can place the same package syntax inside a requirements file and place bothpipandgpippackages inside.gpipinstallrequirements.txtSyntaxWe have a syntax for specify the packages like Go has. We manage to allow some options inside the same line of specification but with easy and simple use."github.com/<ACCOUNT>/<REPOSITORY>"# Simple"github.com/<ACCOUNT>/<REPOSITORY>:<PACKAGE-NAME>"# Different name than repository"github.com/<ACCOUNT>/<REPOSITORY>==<VERSION>"# Get a specified version with Git Tags"github.com/<ACCOUNT>/<REPOSITORY>/path/to/package"# If package is inside subdirectories"github.com/<ACCOUNT>/<REPOSITORY>@<BRANCH>"# If the package is on other branch"github.com/<ACCOUNT>/<REPOSITORY> force=true;https=true"# If you like to declare options in the package declaration"github.com/<ACCOUNT>/<REPOSITORY>/path/to/package:<PACKAGE-NAME>"# You can use the different options in the same declaration.Theaccountis the name of the GitHub user.Therepositorythe name of the repository.Thepaththe path where the package is in, support subdirectories, with ‘/’. e.g:path/to/packageThename of package, as default gpip will take the name of the repository as the package name, but can be defined with ‘:’ after repository name or with path included. e.g:repo/path:other-nameTheversion, you can specify a version to checkout, uses Git Tags for work.Thebranchspecify if the code has to move to other branch before taking action to enter directories, this can be used to test packages that are not in the main branch, or for structure purposes.Theoptionsare the options that the package can handle like: https, token, upgrade, force. Actions that interacts withpiputility andgit. They are separated by ‘;’ and assign values with ‘=’ character. Will be in the end of the line between a space. e.g:https=true;force=trueExamplesGETAs example will be installing this package (gpip) in older version with force, to enable–force-reinstalloption inpipcommand.# With force declared inside package declaration.gpipget"github.com/pomaretta/gpip==0.4 force=true"# With force from CLI parameter.gpipgetgithub.com/pomaretta/gpip==0.4--forceINSTALLThe install command can be used with arequirementsfile, and one thing we like is that only need to be one file and declarepipandgpippackages inside. Only you need to remember to install those packages withgpip installgpipinstallrequirements.txtPROGRAMMATICALLYYou can use thegetcommand inside your scripts.fromgpipimportgetget("github.com/<ACCOUNT>/<REPOSITORY>"# Simple,"github.com/<ACCOUNT>/<REPOSITORY>:<PACKAGE-NAME>"# Different name than repository,"github.com/<ACCOUNT>/<REPOSITORY>==<VERSION>"# Get a specified version with Git Tags,"github.com/<ACCOUNT>/<REPOSITORY>/path/to/package"# If package is inside subdirectories,"github.com/<ACCOUNT>/<REPOSITORY>@<BRANCH>"# If the package is on other branch,"github.com/<ACCOUNT>/<REPOSITORY> force=true;https=true"# If you like to declare options in the package declaration,force=True|False# Force option, default False,debug=True|False# Debug option, shows commands and other information,https=True|False# Https option, Default False,token="your-token"# With HTTPS, use a GitHub token to clone repositories,upgrade=True|False# Upgrade option, from pip)# After get command from gpip you are ready to use your recently installed packages.fromrecently_installed_packageimportthingsCommand Line InterfaceThe following are some of the sub-commands you may find:Commands:GETGetpackagesfromGitHubrepository.INSTALLGetpackagesfromPipandGitHubrepositories,declaredinafile.VERSIONShowthecurrentinstalledversionofgpip.CasesYeah, you read all of that, but you know how to usegpipnow, the powerfull cases that maybe gpip can save your time. Let me guide you through the different use cases that gpip has.Check here.