git github小白看過來——下午篇

下午篇

踉踉蹌蹌,展轉到了下午篇。恬靜的午後,掠去浮華,清風含香,不妨泡杯茗茶,來首--Look At Me(Alan Jackson),像青草同樣呼吸。在下午篇中咱們會講到分支管理的序章,git github在實際項目中的應用。git

編碼的過程有時就是一個不斷處理BUG的過程。好比前天你接到一個任務,須要開發一個新功能,這時你建了一個新分支,名爲formerly,昨天開發完了,將其合到master分支上,而後push到遠程倉庫。今天你正在作另外一個功能,並重建分支future,尚未完成(尚未add),不能提交。此時領導告訴你昨天的代碼有BUG,即便你心中有一萬頭草泥馬,你改或者不改,BUG就在那裏。咱們的處理方法是github

分支管理的序章安全

  1. 將當前工做現場保存起來:$ git stash編碼

  2. 肯定須要在哪一個分支上修復BUG,就切換到哪一個分支上建立臨時分支,git checkout master(假定在master分支);git checkout -b <臨時branch name>;修改file後;git add <filename>;git commmit -m "solve bug";git checkout master;git merge --no-ff-m "" <臨時branch name>;git branch -d <臨時branch name>;git checkout funture(工做現場被保存起來的分支);spa

  3. 剛纔的工做現場:$ git stash list3d

  4. 恢復被保存的現場並幹掉stash: $git stash poporm

由於已經通過朝陽篇,上午篇,中午篇,這裏就再也不一次敲命令了。只要思路清晰,命令不敲錯,應該沒問題的。
至於爲何咱們須要將正在進行未add的文件工做現場保存起來,一是當前分支(funture)的功能未開發完,在多人協同工做時,若將未完成的代碼上傳會影響別人的工做。二是,在大型項目中,你當前分支(funture),有許多代碼未提交(要切換分支必須commit以後),不建議你commit當前分支,由於若是把你如今修改的文件(通常都不止一個)提交的話 以後 你再回來找哪些代碼是完成了一半就提交了,那些是真正提交的區分起來就會很麻煩;另一個緣由就是,雖然commit能夠一次性提交多個add,可是commit以前的add,你須要把文件一個個add,麻煩不言而喻。還不如把當前工做現場存儲起來。blog

問:爲何切換分支必須commit,見下圖圖片

圖片描述

問,爲何修改一個bug須要重建一個分支,我我的以爲是安全吧,不影響其餘分支工做,完成後合併分支,最後刪除該分支,思路比較清晰。開發

工做流二三技

  1. 查看遠程信息:$ git remote -v (顯示能夠抓取和推送的origin的地址)

  2. 推送分支:$ git push origin <分支name>

  3. 抓取分支:$ git clone git@github.com:xiakejie/remotegit.git (這裏的remotegit並非指本地倉庫,二是你要克隆的遠程倉庫)<另外,此操做只克隆到遠程倉庫remotegit的master分支>

  4. 抓取遠程倉庫的其餘分支:$ git checkout -b branchname origin/branchname (即在本地建立遠程分支對應的分支)。

注意,用git命令克隆前,克隆的目錄必定要是git可管理的目錄。

圖片描述

圖片描述

圖片描述

抓取其餘分支
抓取前README.md的內容以下:

圖片描述

打開本地MEADME.md文件添加兩句話,add some words,push to origin dev,執行如圖命令

圖片描述

圖片描述

圖片描述

而後刷新hubgit,打開gitskill倉庫,選擇dev分支,打開README.md文件,查看先後變化。本地目錄也有變化。

  1. 更新代碼:git pull

在push前,必定要先pull

如今咱們的 git github小白看過來 就所有梳理完了。若有不懂,請回看前幾篇。

相關文章
相關標籤/搜索