一天1300 Star量,GitHub上新官方命令行工具

2020-12-09 騰訊網

機器之心報導

參與:思

不想用命令行操作 GitHub 的開發者,不是好的開發者。——不是我說的

小編私以為,Git 是世界上最好的代碼版本控制工具,木有之一。在做項目的時候,通常我們會在本地寫代碼,並通過 Git 命令行追蹤所有修改痕跡。如果你想託管或開源,也可以直接用 Git 把整個項目推送到 GitHub 上。

一般而言,Git 主要都是通過命令行操控,add、commit、push 三道命令一氣呵成。當然 Git 也可以查看代碼文件狀態或回溯歷史代碼等等。自從有了 Git,命令行工具看起來都炫酷了許多。

Git 極簡教程:第一步添加修改的代碼文件,第二步將修改提交到本地代碼庫中,第三步將本地代碼庫推送到遠程代碼庫。

當我們將本地代碼提交到 GitHub 後,那麼就可以在 GitHub 網站上查看各種交互信息了,例如其它開發者提的 Issue,或者提交的代碼合併請求等。但是,如果我們能在命令行上直接查看、處理這些信息,那麼這一定非常酷。從 Git 到 GitHub,命令行能提供一條龍服務。

近日,GitHub 就滿足了這種想像,其新發布了新命令行工具「GitHub CLI」,該工具能無縫對接 GitHub。正如博客所說的:「gh 命令將把 GitHub 的操作體驗,都搬到命令行中」。

現在,macOS、Windows 和 Linux 都能安裝這個命令行工具包。雖然 GitHub CLI 目前仍然是 Beta 版,但從我們的體驗上,還是非常友好的。此外,儘管是新項目,但其已經有了 4.8K 的 Star 量,且剛推出 Beta 一天就增長了 1.3K。

工具地址:https://cli.github.com/

開源地址:https://github.com/cli/cli

上手 GitHub CLI

因為我們試用的系統的 macOS,按照官方文檔,直接用 Homebrew 就好了,不需要額外的操作。安裝後第一個疑惑就是,它怎麼知道我的 GitHub 是啥?果然,運行命令之前是需要授權的。不過這個授權也是異常簡單,只要在 GitHub 網頁上點擊確定就行了,gh 會自動登錄我們的 GitHub 帳號。

後面轉到本地的 GitHub 項目,現在 gh 命令就沒問題了。如下我們先交互式地提交了一條 Issue,Issue 的 Body 需要通過 nano 編輯。

是的,交互式 Issue 最後還是會打開網頁,預覽並提交。當然,我們也可以選擇直接在命令行提交。在 GitHub 博客、文檔中,我們可以找到更多的玩法,如下我們就會介紹一部分。

GitHub 首先介紹的是 Issue 和 Pull Requests 兩個任務的用法,因為大多數開發者每天都會和它們打交道,後文將分為五步一一展示。同時,如果我們對某個開源項目提交代碼或者進行其它操作,gh 命令也會給你不一樣的體驗。

gh 使用手冊:https://cli.github.com/manual/

1. 按需篩選 Issue

現在,我們找一個想要對它做點什麼的開源項目,然後下載到本地。如果我們想看看維護者希望獲得幫助的條目,那麼可以使用 gh 來過濾不同的 Issue。如下所示將篩選出關於「help-wanted」的 Issue:

2. 快速瀏覽

如果找到了一條你能解決的 Bug,使用 gh 能快速在網頁上展示這條 Issue 的細節。

3. 創建 Pull Request

創建一條分支,並提交一些代碼以修復前面 Issue 提到的 Bug,然後就可以提交一條 PR 來分享你的貢獻了:

如果使用 GitHub CLI 創建 Pull Request,且你之前沒有 Fork 這個項目,那麼命令工具會自動 Fork 它。命令工具會將分支推送上去,並提交 PR 以等待合併修改。

4. 查看 PR 狀態

等到第二天,你就可以瞄一眼提交的 PR 到底有什麼改變。gh 命令可以展示 Pull Request 的狀態,並預覽它:

5. 檢查 Pull Request

一旦項目維護者看到了你提交的 PR,並作出反饋,我們就可能已經切換了分支。所以,可以使用 gh 來檢查 Pull Request 分支:

修正代碼、推送代碼然後合併代碼,現在你已經會 GitHub CLI 的基本操作了。後面,隨著命令行工具越來越強大,也許 GitHub 更多更便捷的能力也能加進來,例如瀏覽代碼等等。

本文為機器之心報導,轉載請聯繫本公眾號獲得授權。

------------------------------------------------

相關焦點

  • GitHub官方開源新命令行工具
    開源最前線(ID:OpenSourceTop) 猿妹綜合整理近日,GitHub 發布命令列工具 (Beta) 測試版,官方表示,GitHub CLI提供了一種更簡單、更無縫的方法來使用Github。這個命令行工具叫做GitHub CLI,別名gh。現在,你就可以在macOS、Windows和Linux上安裝GitHub CLI。Github也會通過用戶反饋,在之後的版本中添加更多的功能。
  • GitHub 開源官方命令行工具登頂 TOP1,5 分鐘極速上手!
    但是成為開源生態系統一部分的優勢在於,無論有無官方支持,社區都會在需要時構建相應的工具,GitHub 就有相同的經歷。Hub 是最受歡迎的非官方 GitHub CLI。據其網站表示:「Hub 是命令行 Git 的擴展,可幫助您完成 GitHub 的日常工作,而無需離開終端。」
  • GitHub開源新命令行工具:在終端裡創建、管理PR成現實
    魚羊 發自 凹非寺量子位 報導 | 公眾號 QbitAIGitHub 的官方開源命令行工具來了。名字很正式,叫做GitHub CLI,別名 gh。與此前的 hub 不同,gh 是更高層的封裝,GitHub 希望藉助這一新工具,進一步提升用戶體驗。
  • GitHub 熱點速覽:不可思議的瀏覽器 Browser-2020 周漲 Star 超 3 千
    新晉 GitHub 項目重啟屈指可數的模式,好在老項目們表現甚好。比如一周就獲得超過 3 千 star 的不可思議瀏覽器:browser-2020,它告訴你有哪些不可思議的 feature 可以出現在 2020 年的瀏覽器中。
  • 72000 Star 下載工具被 GitHub 下架,背後的數字千年版權法案是什麼?
    日前,擁有 72k+ star 的命令行視頻下載工具 youtube-dl 被 GitHub 下架,原因是受到了數字千年版權法案的限定,服務平臺有責任對於違反規定的軟體進行下架處理。這款工具發布以來就備受歡迎,根據項目主頁記錄,大概 72k+ 的star,12k+ 的 fork,可以說在開源界算是頗有名氣。它支持的音視頻網站高達 700 多個,提供簡單高效的音視頻下載,只要給出視頻網站或者播放列表的網站連結,就能提供完整視頻的下載,還能夠進行分類和合併。對於廣大程式設計師來說,誰電腦裡還沒有個 Python?幾行命令就能把喜歡的音頻視頻下載下來,必須真香。
  • 對比了Github上5000份Python開源之後,大神精選了36個項目
    臨近51小長假,著名的絕地歐皇Mybridge又為大家送上一份優秀Python開源項目推薦。對比了Github上5000份Python開源之後,選出了36個平均star數超過1600的repo,非常值得大家學習借鑑。接下來是完整列表:1.
  • 微軟最爽命令行工具發布!開源六小時衝上GitHub第二
    這是不少抱著Mac參加微軟Build大會的開發者,看到命令行工具Windows Terminal後的第一反應。隨即,就有人在Twitter上表示:我現在有點想買臺PC了。為什麼要叛逃?除了這個新的命令行工具之外,微軟還發布了完整內核的Linux子系統WSL 2。當真是直擊開發者G點。長期以來,Linux和Mac下的命令行工具自成一派,Windows卻是另一套命令系統。
  • 命令行工具開發:如何快速實現命令行提示?
    阿里妹導讀:對於稍微複雜一些的命令行工具,命令行的提示功能必不可少。那麼對於不同語言的開發者,有沒有一種簡單快捷的實現方式呢?本文分享一種快速實現的方法,使用YAML文件定義命令行工具的使用規範,再通過工具自動生成各種shell的命令行提示腳本,最後分享一些至關重要的命令行解析器。
  • cUrl命令行工具下載使用心得及常用參數解釋
    Curl是一個網絡傳輸工具,同wget非常相似。主要的區別在於wget默認是保存到文件,而curl將輸出定向到命令行上。這使得curl能非常方便的查看站點的內容。如何下載Curl命令行工具?1. 進入下載頁,選擇需要的版本(適合自身作業系統): https://curl.haxx.se/download.html2. 根據自己的作業系統位數和是否需要SSL下載相應的版本。
  • 微軟最爽命令行工具發布,GitHub標星已破4萬6
    乾明 發自 凹非寺 量子位 報導 | 公眾號 QbitAI微軟正式放出命令行工具Windows Terminal。,甚至引得不少人當場表態買PC的工具,終於展現在大眾面前。Windows Terminal,是微軟5月分在Build開發大會上推出命令行工具,支持PowerShell,Cmd,WSL(Windows的Linux子系統)和SSH等命令行程序。可以說是全平臺制霸,簡化開發者的工作流程。有了Terminal,什麼Cygwin、PuTTY,統統可以丟掉!
  • GitHub Desktop全新免費的Github官方桌面客戶端
    如果你是一名程式設計師,那麼一定會聽過或用過現在最流行的版本控制工具 GIT!而 GitHub.com則是目前全球最熱門的公共代碼倉庫網站,多到數不清的知名開源項目原始碼都是託管在它上面。託管在 GitHub 上面的項目可以通過傳統的 Git 命令行方式進行訪問和操作 (後面有教程),而對於習慣了使用 GUI 窗口界面軟體的用戶,如今 GitHub 也已經為 Mac 和 Windows 平臺發布了界面統一的全新的 GitHub Desktop 官方桌面客戶端,用於代替之前的舊版客戶端。
  • 項目在手,天下我有,這裡有820個ML Python庫,star量共計260萬
    項目在手,天下我有,這裡有820個ML Python庫,star量共計260萬 2021-01-18 07:54 來源:澎湃新聞·澎湃號·湃客
  • Windows Terminal 1.0正式發布:史無前例強大的命令行終端
    說起命令行終端,即便不是搞編程開發的也都略知一二。在今天的Build 2020開發者大會上,微軟公布了Windows Terminal 1.0的正式版本,這就是一個全新的、功能強大的命令行終端工具,在此前長達一年的預覽期間就備受好評。
  • 我在GitHub上找到了這些遊戲項目,刺激!
    將其放在您的.vimrc中:Plug 'johngrib/vim-game-code-break'然後在Vim中運行以下命令::source %:PlugInstall裝上這個插件輸入:VimGameCodeBreak,即可開始遊戲。
  • Go 命令行工具項目結構最佳實踐
    【導讀】本文針對Golang實現的命令行小工具項目結構做了詳細介紹,同時介紹了其他主流Go項目結構。最近我在重構早期實現的命令行工具項目,在對項目結構做改動的過程中我沒看到有一個Go 語言項目結構最佳實踐。
  • TaxonKit:小巧、高效、實用的NCBI分類學數據命令行工具
    TaxonKit: 小巧、高效、實用的NCBI分類學數據命令行工具集宏基因組按:NCBI物種分類注釋信息格式複雜,存在層級不整齊、缺失、名稱變動等問題
  • 一天star量破千,特斯拉AI總監寫了個GPT的Pytorch訓練庫
    那麼,除了使用官方 API 以外,我們還有沒有其他方法能上手把玩一下這個「最大模型」呢?近日,特斯拉人工智慧研究負責人、前 OpenAI 研究科學家 Andrej Karpathy 進行了嘗試。他基於 PyTorch,僅用 300 行左右的代碼就寫出了一個小型 GPT 訓練庫,並將其命名為 minGPT。
  • 愛上命令行並深入
    命令行是一個強大的工具,而我們大多數卻都不會用,可以說沒有命令行的世界等於你失去了一多半的樂趣和技能。本文蟲蟲和大家一起來聊聊命令行,並教大家一起來學習命令,不管你是運維、開發、測試、DBA,甚至是項目經理、PM都能通過命令行獲得很大的裨益。
  • GitHub上最火的程式設計師簡歷項目與模版下載
    壹題22k star 項目,160+多道前端面試真題含解答,還有一系列基礎進階文章https://muyiy.cn/question/JavaScript-Algorithms2.1k star 項目,130+道前端算法、編程、手寫源碼真題,還有一系列前端算法進階文章,持續更新中https://github.com/sisterAn/JavaScript-Algorithms
  • jq:命令行下解析JSON的神器
    雖然如此,有些同學可能還是嫌寫腳本太麻煩,有沒有一種很簡單就能上手就用,用完就扔的JSON工具呢?答案是肯定的。這就是本文蟲蟲要給大家介紹的一個命令行工具jq,注意jq不是曾經流行的JS庫Jquery的縮寫。jq是一個出色的命令行JSON處理器,提供了用於查詢,操作和使用JSON文件的大量功能。而且作為一個命令行工具,可配合UNIX管道使用,單行腳本處理JSON。