用 Git 和 Github 提高效率的 10 個技巧!



Git 和 GitHub 都是非常強大的工具。即使你已經使用他們很長時間,你也很有可能不知道每個細節。


我整理了 Git 和 GitHub 可能提高日常效率的10個常用技巧。


GitHub



1、快捷鍵: t 和 w


在你的源碼瀏覽頁面,按 t 可以快速進入模糊文件名搜索模式:


640?


在你倉庫主頁,按 w 可以快速進行分支過濾:


640?


在任意 GitHub 頁面中,按 ? 展示當前頁面可用的快捷鍵:


640?


2、忽略空格: ?w=1


在任意的 diff URL 添加 ?w=1 用來整理縮進:


640?


3、按范圍過濾提交記錄: master@{time}..master


你可以創建一個對比頁面通過使用 URL github.com/user/repo/compare/{range}。范圍 (range) 可以是兩個 SHA 例如 sha1…sha2 或者兩個分支名稱例如 master…my-branch。范圍同時也非常智能的支持使用時間作為關注點。


你可以通過 master@{1.day.ago}…master 過濾從昨天開始的提交。


例如:

https://github.com/rails/rails/compare/master@{1.day.ago}…master 顯示 Rails 項目中全部昨天開始的提交記錄和變化:


640?


4、按作者過濾提交記錄: ?author=github_handle


你可以通過在對比頁面URL中增加 ?author=github_handle 來按作者過濾提交記錄。


例如:

https://github.com/dynjs/dynjs/commits/master?author=jingweno 顯示 jingweno 對 Dynjs 的提交記錄:


640?


5、.diff 和 .patch


在比較頁面、合并請求頁面或者評論頁面的URL后增加 .diff 或者 .patch,可以得到 diff 或者 patch 的文本格式。


例如:

https://github.com/rails/rails/compare/master@{1.day.ago}…master.patch?


顯示Rails項目中全部昨天開始的提交記錄和變化的文本格式:


640?


6、郵件回復


你可以直接在收到的 GitHub 通知郵件進行評論,不必在網站頁面中評論。GitHub 會正確的處理你的評論:


640?


7、鏈接行


在文件展示頁面,點擊某行或者通過按 SHIFT 選擇多行,URL 會有相應的改變。如果你要給你的隊友分享一段代碼是非常方便的:


640?


8、關注用戶


在合并請求、問題或者任何評論中中提到用戶會使用戶關注全部的后續通知:


640?


9、自動鏈接


在合并請求、問題、或者任何評論中,sha和問題碼(例如:#1)會被自動鏈接。并且,你也可以鏈接其它倉庫的 sha 或者問題碼,


格式:user/repo@sha1 或者 user/repo#1。


下面是一個評論中通過sha自動鏈接的例子:


640?


10、hub


Hub 是 GitHub的命令行。它提供了Git和Github之間的集成。一個最有用的命令就是在命令行輸入 hub pull-request 創建pull request。詳見 readme.(https://github.com/defunkt/hub#commands),


Git


1、git log -p FILE


查看 README.md 的修改歷史,例如:


> git log -p README.md


2、git log -S’PATTERN


例如,搜索修改符合 stupid 的歷史:


> git log -S'stupid'


3、git add -p


交互式的保存和取消保存變化,使用:


> git add -p


4、git rm –cached FILE


這個命令只刪除遠程文件,例如:


> git rm --cached database.yml


刪除 database.yml 被保存的記錄,但是不影響本地文件。這對刪除已經推送過的忽略文件記錄而且不影響本地文件是非常的方便的


5、git log ..BRANCH


這個命令返回某個非 HEAD 分支的提交記錄。假如你在一個功能分支,輸入:


> git log ..master


返回全部 master 分支的歷史記錄,包括未被合并到當前分支的提交記錄。


6、git branch –merged & git branch –no-merged


這個命令返回已合并分支列表或未合并的分支列表。這個命令對合并前檢查非常有用。例如,在一個功能分支,輸入


> git branch --no-merged


返回未合并到該分支的分支列表。


7、git branch –contains SHA


返回包含某個指定 sha 的分支列表。例如:


> git branch --contains 2f8e2b


顯示全部包含提交 2f832b 的分支。這個命令對于驗證 git cherry-pick 完成非常有幫助。


8、git status -s


返回一個簡單版的 git status。我設置這個命令為默認 git status 來減少噪音。


9、git reflog


顯示你在本地已完成的操作列表。


10、git shortlog -sn


顯示提交記錄的參與者列表。和GitHub的參與者列表相同。


Summary


Git 是一個設計良好的工具。Git操作常用的命令都在這里了,點擊這里查看。了解它可以直接讓你更有效率并成為一個更有才華的程序員。GitHub,在另一個方面,在 Git 基礎上提供便利的團隊合作特性。有能力使用 GitHub 也會提高你日常效率

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/272284.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/272284.shtml
英文地址,請注明出處:http://en.pswp.cn/news/272284.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

docker顯示鏡像的摘要信息

顯示鏡像的摘要信息 docker images --digests

嵌入式C語言基礎(四)

為什么要用結構體? 在實際問題中,一組數據往往具有不同的數據類型。例如,在學生登記表中,姓名應為字符型;學號可為整型或字符型;年齡應為整型;性別應為字符型;成績可為整型或實型。顯然不能用一…

命令行分析java線程CPU占用

1.使用top命令找出占用cpu最高的JAVA進程pid號 2. 找出占用cpu最高的線程: top -Hp pid -d 1 -n 1 3. 打印占CPU最高JAVA進程pid的堆棧信息 jstack pid > /tmp/stacktrace.log 4. 把占CPU最高線程號碼換算成16進制到stacktrace.log中尋找相應線程16進制值找到…

docker搜索鏡像

docker search 要下載的 OFFICIAL 為ok的表示是官方鏡像

C#操作HttpClient工具類庫

using System; using System.Collections.Generic; using System.Net.Http; using System.Windows.Forms; using System.Configuration; using System.IO; using Newtonsoft.Json; namespace Dcflow { public class HttpHelper { //獲取Configuration對象 public static string…

docker從倉庫找鏡像

docker search -s 數量 要下載的 數量表示倉庫start數

bzoj 1911: [Apio2010]特別行動隊 2011-12-26

1911: [Apio2010]特別行動隊 Time Limit: 4 Sec Memory Limit: 64 MBSubmit: 892 Solved: 359[Submit][Status][Discuss] DescriptionInputOutputSample Input4 -1 10 -20 2 2 3 4 Sample Output9HINT Source _________________________________________ 很簡單的動規方程&a…

嵌入式C語言基礎鏈表

什么是鏈表? 鏈表其實就是一種數據結構,所謂的數據結構就是數據存放的思想。 數組、鏈表優缺點: 增加一個元素或者刪除一個元素都很難,因為地址是連續的,刪除一個元素可能會挪動多個元素,不靈活。但是對于鏈…

docker pull 從倉庫拉取鏡像

docker pull 要拉取的鏡像名 等價于 docker pull 要拉取的鏡像名:lastest 拉取固定的鏡像:docker pull 要拉取的鏡像名:版本號 省略lastest表設計就是拉取的最新的

理解js中的原型鏈,prototype與__proto__的關系

說到prototype&#xff0c;就不得不先說下new的過程。 我們先看看這樣一段代碼&#xff1a; 1<script type"text/javascript">2 var Person function () { };3 var p new Person();4</script>很簡單的一段代碼&#xff0c;我們來看看這個new究竟做了什…

C#抓取網頁HTML內容

using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Net; using System.Text; using System.IO; using System.Text.RegularExpressions; namespace Web { /// <summary> /// 公共方法類 /// </summary> p…

項目一感應垃圾桶(Wemos)

硬件材料&#xff1a; Wemos D1、SG90舵機、HC-SR04、杜邦線若干、蜂鳴器3.3V&#xff08;可有可無&#xff09; 軟件材料&#xff1a; arduino IDE編譯器、USB轉串口驅動 Wemos D1&#xff1a; 特性&#xff1a; 基于ESP-8266EX及arduino做的一個融合arduino兼容&#xff0…

docker刪除本地所有鏡像

docker rmi -f ${docker images -qa}

PAT1069. The Black Hole of Numbers

//這是到水題&#xff0c;之前因為四位數的原因一直不能A&#xff0c;看了別人的程序&#xff0c;才明白&#xff0c;不夠四位的時候沒考慮到&#xff0c;坑啊。。。。。臉打腫 #include<cstdio>#include<algorithm>using namespace std;int main(){ //freopen(&qu…

WiFi避障小車

硬件清單&#xff1a; Wemos D1&#xff08;支持AP模式也就是路由模式和STA模式也就是上網設備&#xff09;、超聲波模塊、小車、L9110s步進電機控制器 軟件&#xff1a; eclipse、arduino IDE WiFi配置參考博文 ESP8266WiFi庫: 從上圖中可以看出ESP8266WiFi庫主要包含Stati…

yum常用命令整理

yum命令的形式一般如下。要說明的是以下演示中所使用到的PACKAGE、GROUP都是變量&#xff0c;需要保證運行yum命令的主機能連接外網&#xff0c;否則大部分命令將由于沒有網絡連接而不能輸出結果。yum [options] [command] [package]#以下演示中大寫的單詞是變量1.安裝操作yum …

CSS3 2D 轉換

CSS3 2D 轉換 先看兼容性 transform屬性向應用元素應用2d 或者 3d裝換&#xff1b;該屬性允許我們進行旋轉&#xff0c;縮放&#xff0c;移動或者傾斜&#xff1b; 基本語法&#xff1a; transform: none|transform-functions;transform-function&#xff1a;這東東有n的函數可…

程序猿最喜歡說的30句話

雖然代碼總會有這個那個問題&#xff0c;但程序猿卻總有謎一般的從容和自信。上圖來自&#xff1a;《當程序出問題時程序員最喜歡說的30句話》來看看程序猿經常說的話&#xff1a;1、在我的電腦上是正常的啊。。。2、不可能出現這種情況的3、快了&#xff0c;已經完成了90%。4、…

linux環境下Ncurses實現貪吃蛇游戲

游戲說明&#xff1a; linux環境下基于Ncurses圖形庫的C語言小游戲。 Ncurses介紹&#xff1a; Ncurses(new curses)是一套編程庫&#xff0c;它提供了一系列的函數以便使用者調用它們去生成基于文本的用戶界面。 Ncurses是一個能提供功能鍵定義(快捷鍵),屏幕繪制以及基于文本…