GitHub on your command line. User your terminal, not the browser. Works hand-in-hand with
github_api
gem.
Add this line to your application's Gemfile:
gem 'github_cli'
And then execute:
$ bundle
Or install it yourself as:
$ gem install github_cli
Run it:
$ gcli
The first step is to create a configuration file, either global in home directory or local inside the project:
$ gcli init [--local|-l]
Without any options this command will setup a .gcliconfig
configuration file in your home directory with all the global settings. By passing --local
option the config file will be created locally in the current directory.
Main configuration options are:
user.token # Authentication token
user.login # User login
user.password # User password
user.name # Default user name
user.repo # Default repo name
user.org # Default organization name
core.editor # Editor to be opened
core.endpoint # The api endpoint, by default https://api.github.com
core.site # The web endpoint, by default https://github.com
core.pager # Pager to be used, by default less
core.format # Output formating
core.quiet # Surpass output to show only response status
core.ssl # SSL settings
core.auto_pagination # Switch on default results pagination, default false
Moreover, gcli config
command allows you to set/get any configuration option such as output format, editor or oauth token.
For instance, to check value for your authentication token
do
$ gcli config user.token
And to set the value do
$ gcli config user.token lh23l4kj234....
To list specific options
$ gcli config --list [regex]
To edit config in your favourite editor:
$ gcli config -e
Finally, to see a manpage about available configuration options do
$ gcli help config
To create oauth tokens you need to setup your basic authentication.
You can either set it up manually like so
$ gcli init
$ gcli config user.login '...'
$ gcli config user.password '...'
Then to create your token do
$ gcli auth create --scopes=repo --note=github_cli --note-url=http://github.com/piotrmurach/github_cli
Alternatively authorize
command has been provided that will guide you through authentication process by asking questions and then save the credentials to .githubrc
file. Example
$ gcli authorize
To see your current tokens do
$ gcli auth ls
To see current tokens without configuration file pass --login
and --password
flags like so
$ gcli auth ls --login=... --password=...
Finally to add the token to your config do
$ gcli config user.token '...'
The required arguments come first as per command description, then are followed by the optional arguments supplied as specific options.
For instance, one can create repository by supplying parameters in the following way:
$ gcli repo create github_api --desc='Test repo for kitty.'
To create repository inside organization:
$ gcli repo create github/github_api --desc='Test repo for kitty.'
To provide array argument, pass space delimited strings like so
$ gcli hook create <user> <repo> --events=push issues status
To provide hash argument, pass space delimited key:value pairs such as
$ gcli hook create <user> <repo> --config=url:"http://example.com/path" content_type:json
To find out which options are required and which are optional use help
command:
$ gcli repo help create
You can list all GitHub APIs commands:
$ gcli list
to limit returned results pass pattern
$ gcli list re* # Returns all commands matching the pattern
To see a list of subcommands that a given command provides just type top-level command like so
$ gcli repo
The API responses can be formatted as csv
or table
.
By default responses are in tabular format. Tables are available in horizontal
and vertical
mode. To enforce table display pass :h
and :v
respectively. Otherwise a default orientation will be picked depending on the request made and terminal size.
To get csv
formatting for easy command piping do
gcli repo ls -u wycats --format=csv
To suppress output pass --quiet
option like so
gcli repo create ... --quiet=true
By default all responses are paged. You can switch off paging by supplying no-pager
flag.
gcli --no-pager user ls -u wycats
Also you can supply you preferred pager
, otherwise the paging program is taken from environment variable PAGER if defined or defaults to "less".
Interact with git data:
$ gcli blob
$ gcli commit
$ gcli ref
$ gcli tag
$ gcli tree
Interact with issues:
$ gcli issue
$ gcli label
$ gcli milestone
$ gcli comment
Interact with repositories:
$ gcli repo
$ gcli collab
$ gcli content
$ gcli download
$ gcli fork
$ gcli hook
$ gcli key
Interact with activities:
$ gcli star
$ gcli watch
$ gcli event
Interact with gists:
$ gcli gist
Interact with users:
$ gcli user
$ gcli email
$ gcli follower
Interact with organizations:
$ gcli org
$ gcli member
$ gcli team
Interact with authorizations:
$ gcli auth
Interact with search:
$ gcli search
The test suite includes both unit tests and end-to-end tests. The unit tests are in spec
folder and can be run:
$ bundle exec rake spec
The end-to-end tests are in features
folder and can be run:
$ bundle exec rake features
In order to run all the tests run:
$ bundle exec rake [ci]
This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.
Bug reports and pull requests are welcome.
git checkout -b my-new-feature
)git commit -am 'Added some feature'
)git push origin my-new-feature
)Copyright (c) 2012 Piotr Murach. See LICENSE for further details.
github 命令行 GitHub已启动GitHub CLI ,这是一个新的命令行界面,它有望以更无缝的方式与代码托管平台一起使用。 GitHub CLI现已提供Beta版。 [ 同样在InfoWorld上:Git和GitHub用户的27个基本技巧 ] GitHub CLI可安装在Windows,Linux和macOS上 ,可用于访问问题,并从终端(开发人员已经在使用git及其代码的地方)中提取请
github文档地址:https://github.com/jonataslaw/get_cli 1.全局下载命令 flutter pub global activate get_cli 2.环境变量Path配置 flutter的安装路径\.pub-cache\bin (这个路径上一步全局下载好后一般会有Warning提示直接复制就行) 3.重启终端后直接使用文档上的 get 命令即可 macO
说明 一款更快的 git clone GitHub 源码 cli 工具 原理是使用了国内的镜像代理,每次使用git前要修改镜像地址觉得麻烦,就封装到cli工具中,方便使用 安装 npm i -g fast-git-clone or yarn add -global fast-git-clone 使用 fast-git-clone 的使用和 正常的 git clone 子命令一样正常使用 fas