日常工作重度依賴於GitHub,分享一下我所知道的一些GitHub使用技巧。
雖然是web介面,但GitHub提供了大量的鍵盤快捷鍵。使用者只要按下特定按鍵就會觸發相應的功能,滿滿的vim大神即視感。例如按下“g+i”,就會馬上切換到問題列表。記不住快捷鍵也沒關係,按下“?”,GitHub會立刻展示如下的快捷鍵清單,相當貼心。
GitHub廣泛使用Markdown,包括Gists、問題/合併請求的描述及評論、預設文件等等。除了標準的Markdown語法,GitHub還擁有定製的Markdown語法(GitHub Flavored Markdown, GFM),用於控制文字樣式、建立列表/表格、建立程式碼塊、語法高亮、提及特定問題或使用者等等。
透過使用“gelstudios/gitfiti”工具,可以生成類似於畫素圖的GitHub貢獻圖表,逼格滿滿。
透過在程式碼倉庫的.github目錄下放置以下檔案,可以定製建立問題或者合併請求時的預設描述:
ISSUE_TEMPLATE.md
PULL_REQUEST_TEMPLATE.md
如果在問題或合併請求的描述中使用Markdown任務列表,任務列表的勾選情況會在問題或合併請求列表中直接展示出來。
留意下圖中的(5 of 5),表示上圖中所有五個任務項都已勾選。此功能通常和問題/合併請求模板配合使用,指定每個問題或合併請求都必須完成的任務。
如果一個合併請求中包含大量的縮排變更,預設情況下,所有空白字元的變更都會在檔案比較頁面展示出來,影響正常的程式碼審查。
雖然GitHub自身功能相當強大,但在逆天的程式設計師眼裡,還是遠遠不夠的。所以很多真愛粉建立了大量針對GitHub的瀏覽器外掛(尤其是針對Chrome瀏覽器),提供很多實用的功能(把GitHub玩壞)。這裡介紹幾個:
Refined GitHub
此瀏覽器擴充套件非常強大,包含數十個針對GitHub的增強功能,目的就是以外掛的形式補足程式設計師眼中GitHub的缺陷。其中有些功能甚至被GitHub官方招安。例如下圖中“合併請求自動化檢查成功後自動合併”的功能,讓有強迫症的小夥伴可以起身喝杯水,而不用一直盯著合併請求的自動化檢查狀態。此擴充套件也透過增加一個按鈕的方式實現了上文中提到的“比較時忽略空白字元”的功能。更多功能,可安裝後自行探索。
Octotree
此擴充套件在頁面左側開啟一個可收縮的面板,把當前倉庫中的檔案以樹狀結構完整展示出來,大大加快了GitHub上深層檔案的查詢和切換速度。
OctoLinker
以上外掛同樣適用於GitHub企業版(可能需要額外的配置步驟才能啟用)。更多GitHub瀏覽器擴充套件,可在GitHub和Chrome Web Store上搜索。
日常工作重度依賴於GitHub,分享一下我所知道的一些GitHub使用技巧。
鍵盤快捷鍵雖然是web介面,但GitHub提供了大量的鍵盤快捷鍵。使用者只要按下特定按鍵就會觸發相應的功能,滿滿的vim大神即視感。例如按下“g+i”,就會馬上切換到問題列表。記不住快捷鍵也沒關係,按下“?”,GitHub會立刻展示如下的快捷鍵清單,相當貼心。
MarkdownGitHub廣泛使用Markdown,包括Gists、問題/合併請求的描述及評論、預設文件等等。除了標準的Markdown語法,GitHub還擁有定製的Markdown語法(GitHub Flavored Markdown, GFM),用於控制文字樣式、建立列表/表格、建立程式碼塊、語法高亮、提及特定問題或使用者等等。
通用Markdown語法參考GitHub定製Markdown語法參考GitHub貢獻圖表生成工具透過使用“gelstudios/gitfiti”工具,可以生成類似於畫素圖的GitHub貢獻圖表,逼格滿滿。
問題/合併請求模板透過在程式碼倉庫的.github目錄下放置以下檔案,可以定製建立問題或者合併請求時的預設描述:
ISSUE_TEMPLATE.md
PULL_REQUEST_TEMPLATE.md
任務列表如果在問題或合併請求的描述中使用Markdown任務列表,任務列表的勾選情況會在問題或合併請求列表中直接展示出來。
留意下圖中的(5 of 5),表示上圖中所有五個任務項都已勾選。此功能通常和問題/合併請求模板配合使用,指定每個問題或合併請求都必須完成的任務。
忽略空白字元如果一個合併請求中包含大量的縮排變更,預設情況下,所有空白字元的變更都會在檔案比較頁面展示出來,影響正常的程式碼審查。
GitHub瀏覽器擴充套件雖然GitHub自身功能相當強大,但在逆天的程式設計師眼裡,還是遠遠不夠的。所以很多真愛粉建立了大量針對GitHub的瀏覽器外掛(尤其是針對Chrome瀏覽器),提供很多實用的功能(把GitHub玩壞)。這裡介紹幾個:
Refined GitHub
此瀏覽器擴充套件非常強大,包含數十個針對GitHub的增強功能,目的就是以外掛的形式補足程式設計師眼中GitHub的缺陷。其中有些功能甚至被GitHub官方招安。例如下圖中“合併請求自動化檢查成功後自動合併”的功能,讓有強迫症的小夥伴可以起身喝杯水,而不用一直盯著合併請求的自動化檢查狀態。此擴充套件也透過增加一個按鈕的方式實現了上文中提到的“比較時忽略空白字元”的功能。更多功能,可安裝後自行探索。
Octotree
此擴充套件在頁面左側開啟一個可收縮的面板,把當前倉庫中的檔案以樹狀結構完整展示出來,大大加快了GitHub上深層檔案的查詢和切換速度。
OctoLinker
使用此外掛,可以快速跳轉到當前程式碼引用檔案,彷彿置身IDE中,如絲般順滑。以上外掛同樣適用於GitHub企業版(可能需要額外的配置步驟才能啟用)。更多GitHub瀏覽器擴充套件,可在GitHub和Chrome Web Store上搜索。