Git倉庫
內容還未完整,往後學習過程繼續添加...
一.參考他人文章
http://www.cnblogs.com/Josiah-Lin/p/6847973.html (Git詳細教程---多人協作開發)
工作區
暫存區
倉庫
Git 保存的不是文件差異或者變化量,而只是一系列文件快照。
分支其實就是從某個提交對象往回看的歷史
3.2 分支的新建與合並
現在讓我們來看一個簡單的分支與合並的例子,實際工作中大體也會用到這樣的工作流程:
1. 開發某個網站。 2. 為實現某個新的需求,創建一個分支。 3. 在這個分支上開展工作。
假設此時,你突然接到一個電話說有個很嚴重的問題需要緊急修補,那麽可以按照下面的方式處理:
1. 返回到原先已經發布到生產服務器上的分支。 2. 為這次緊急修補建立一個新分支,並在其中修復問題。 3. 通過測試後,回到生產服務器所在的分支,將修補分支合並進來,然後再推送到生產服務器上。 4. 切換到之前實現新需求的分支,繼續工作。
由於 Git 中的分支實際上僅是一個包含所指對象校驗和(40 個字符長度 SHA-1 字串)的文件,所以創建和銷毀一個分支就變得非常廉價。
在 Git 中提交時,會保存一個提交(commit)對象,該對象包含一個指向暫存內容快照的指針,包含本次提交的作者等相關附屬信息,包含零個或多個指向該提交對 象的父對象指針:首次提交是沒有直接祖先的,普通提交有一個祖先,由兩個或多個分支合並產生的提交則有多個祖先。
我們假設在工作目錄中有三個文件,準備將它們暫存後提交。
一旦分支中的提交對象發布到公共倉庫,就千萬不要對該分支進行衍合操作。
git stash push 將文件給push到一個臨時空間中
git stash pop 將文件從臨時空間pop下來
為什麽要把文件給push到一個臨時空間中,然後又為什麽將文件從臨時空間pop下來。
Git倉庫