Skip to main content

【筆記】Git指令

Working Directory

git stash save:當改code改到一半還不想commit,卻又要跳到別的工作狀態或分支的情況下,可以先將目前狀況儲藏(stash)下來
git stash apply:把最後一次的stash狀態還原出來用,使用後記得還要另外手動刪除
git stash drop:刪除最後一次的stash
git stash list:查看stash清單

git add <file_name>

Staging Area

git rm --cached <file_name>:把檔案從stage撤下
git commit
git commit -m <message>:commit並加上訊息,如git commit -m "add xxx file"

git reset HEAD^: 想修改已commit的檔案,使用該指令取消最後一次commit (soft),把檔案拿回來繼續編輯
git reset HEAD^ --hard: 想修改已commit的檔案,使用該指令取消最後一次commit (hard)

Repository

git commit --amend:修改最後一次commit內容,如果之前有git add,那些檔案也會併入該次commit,而不會新增提交次數
git commit --amend -m <message>:修改最後一次commit,如果之前有git add,那些檔案也會併入該次commit,-m後面加上要寫的message

git log -p <file_name> : 查看單一檔案的歷史紀錄,每次commit與前一版本新增\刪除的部分
git blame <file_name> : 查看檔案每一行文字最近更動的提交編號

git checkout <file_name> : 讓檔案或目錄回到最近一次commit的狀態
git checkout .:讓當前目錄回到最近一次commit的狀態



分支

git branch:檢視分支
git branch -v:檢視各分支最近的提交內容
git branch --merged:檢視已經合併過的分支

git branch <branch_name>:新增分支
git branch -D <branch_name>:刪除分支

切換分支之後,檔案內容也會跟著更動
git checkout <branch_name>:切換到branch_name分支
git checkout -b <branch_name>:切換到branch_name分支,如果不存在就自動建立分支

git checkout master
git merge <branch_name>:這兩個指令會將branch_name分支合併到master


git checkout
可以checkout <file_name>、<branch_name>,把完成commit上去的東西拿回來


參考自:
《人生不能重來但git可以》高見龍
這封郵件來自 Evernote。Evernote 是您專屬的工作空間,免費下載 Evernote

Comments

Popular posts from this blog

淺介I2C

I 2 C 起源 內部整合電路( Inter-Integrated Circuit, I 2 C, 讀做 I-square-C )是由飛利浦半導體公司開發的一種專用介面。 I 2 C 是以最少的連接線進行硬體佈線還要有靈活擴充的特性為目標而設計,最後出現了只有以序列資料線 SDA ( Serial DAta )及序列時脈線 SCL ( Serial CLock )來進行所有通訊的 I 2 C 介面, I 2 C 允許多主( master )多僕( slave )系統,其傳輸系統內每一個裝置都有唯一的地址可供辨識。資料的寫入和讀取都是由 master 主動發起, slave 無法主動向 master 回報,除非使用中斷腳通知 master 。 I 2 C 傳輸速度有慢(小於 100Kbps )、快( 400Kbps )及高速( 3.4Mbps )三種,每一種均可向下相容。 I 2 C 電路配置 如前所述 I 2 C 為兩線式,一為時脈線 SCL ,另一條為資料線 SDA ,硬體線路如圖 1 ,兩線皆為雙向性,且都需要透過高接電阻( pull-up, 對岸說的上拉電阻)接電。平常不使用時, SCL 與 SDA 的訊號都處於高電位。為了多裝置共線的功能,裝置的 SCL 和 SDA 腳位要為 開洩極( open-drain ) 或 開集極( open-collector ) 。一旦有一個腳位的開洩極導通接地,則整條線都為低電位,這種現象稱作 wired-AND 運作 ;如同邏輯 AND 運算,需要共接的腳位都是 1 (開洩極斷路),該條線的電位才是 1 。如果沒有開洩極的腳位,可以使用具內部高接電阻的腳位,當要輸出 1 時,則設定該腳位為高接型輸入腳;而輸出為 0 時,則改設定為輸出腳並輸出 0 的值。 圖 1. I 2 C 傳輸裝置接線 [1] I 2 C 通訊協定 為使說明部分更簡潔,首先介紹幾個名詞: 位元傳輸協定 當 master 要跟 slave 溝通時,會先有個起始條件( start condition )的訊號,結束時也會送出終止條件( stop condition )訊號。起始條件訊號

【Arduino】Timers, Registers, and Fast PWM Mode

由於Arduino預設的PWM控制方法僅有500Hz(好像還有另一個),想要知道怎樣才可以調整成其他頻率,以此做記錄。 先說明Timer設定方式、PWM Mode,之後會在Arduino上實做。 如果對_BV()沒有概念,可以參考 【Arduino I/O Ports】Control under avr-libc 這篇文章。

Emart Sunny Sale: 3D Shadow QR Code

  Emart是韓國連鎖超市,近期他們發現中午12:00到下午1:00的銷售量會明顯減少,為了提高銷售量他們製作出了帶有日晷概念的3D QR code。