Git的一些經常使用操做

當你開始一個完整的項目時,git會是你常常接觸到的,如下是今天學習到的一些經常使用操做,對於前端新手而言,足以。前端

Git的介紹和安裝(略)

推薦廖雪峯的Git教程(https://www.liaoxuefeng.com/),裏面介紹得很是詳細,還有git的操做,值得好好學習和收藏。git

開始建立

  • git init (建立本地倉庫)
  • git add . (將項目添加至暫存區)
  • git commit -m "提交信息" (將項目提交至本地倉庫)
  • git remote add origin http地址 (關聯本地倉庫與遠程倉庫,默認已建立了遠程倉庫(Github、碼雲……))
  • git push -u origin master (將項目推送至遠程倉庫)

至此,你已建立了本地倉庫和遠程倉庫,此時,只有一個master分支。這是項目最初始的一個狀態。學習

在實際開發過程當中,咱們並不會直接在master分支中進行修改,因此做爲一個新人加入到新公司的項目,每每會拿到一個遠程倉庫地址,這時,你須要:fetch

  • git clone 倉庫地址 (先將項目克隆到本身的本地中)

當你從遠程倉庫克隆時,實際上Git自動把本地的master分支和遠程的master分支對應起來了,遠程倉庫的默認名稱是origin。spa

  • git checkout -b dev-Jan origin/master (建立本身的遠程倉庫)
  • git push origin dev-Jan (將項目推送至dev-Jan遠程倉庫)

推送分支,就是把該分支上的項目提交推送到遠程倉庫。推送時,要指定本地分支,這樣,Git就會把該分支推送到對應的遠程分支上。code

如今,你能夠安心敲本身的代碼。orm

協同工做

在工做中,你的小夥伴們時不時會push到master主分支,你須要將master主分支的最新提交拉到本身的項目中:git pull origin/master,進行合併,這樣,確保整個項目代碼是實時更新的。因此,將master拉到本身的項目中,應該是天天上班第一件事要作的事情。blog

clipboard.png

其次,當你的項目開發好了,推送到了本身的遠程分支(origin/dev-Jan),而別的小夥伴須要合併你的代碼,那麼他會從你的遠程分支(origin/dev-Jan)pull代碼,在本地合併(git merge dev-Jan),如有衝突,解決衝突,再將合併的最新版本push到master主分支。反過來,你也須要這樣作。教程

clipboard.png

再有,當小夥伴向master提交了內容,而你也試圖推送。若是推送失敗,則由於遠程分支比你的本地更新,你須要先用git pull合併。若是合併有衝突,則解決衝突,並在本地提交;如果沒有衝突或者解決衝突後,再用git push origin master推送就能成功!ip

clipboard.png

每一個人都有本身的分支,咱們在本身的分支裏敲代碼,再與其餘小夥伴的分支進行合併,完成上線發佈版,而master通常都是上線發佈的,固然也有別的上線分支如dev,這須要看公司的具體業務了。

刪除與抓取

  • 刪除本地分支:git branch -d dev-Jan
  • 刪除遠程分支:git push origin : dev-Jan(冒號前面有空格)
  • 獲取遠程倉庫全部分支信息:git fetch --all

git fetch 和 git pull的區別在於:git fetch 至關因而從遠程獲取最新到本地,不會自動merge,而git pull至關因而從遠程獲取最新版本並merge到本地

回退版本

git reset --hard head^ (回退/回滾上一個版本)

那若是又後悔了,想要回退/回滾到剛剛那個版本,那你可使用命令 git reflog 或者 git log 查看歷史版本信心,肯定回退到哪個版本。

$ git reflog
76c4d4f (HEAD -> master)HEAD@{0}: reset: moving to HEAD^
44c2edc (origin/master)HEAD@{1}: merge dev: Fast forward
76c4d4f (HEAD -> master)HEAD@{2}: checkout:moving form dev to master
44c2edc (origin/master)HEAD@{3}: commit:dev first init

git reset --hard HEAD@{1}

總結

綜上,Git經常使用的一些命令有:

  • git init(從無到有的建立本地倉庫)
  • git add . (將項目添加至暫存區)
  • git commit -m "提交信息" (將項目提交至本地倉庫)
  • git remote origin http地址 (關聯本地倉庫與遠程倉庫)
  • git push -u origin master (將項目推送至遠程倉庫)
  • git pull origin master (從遠程獲取最新版本並merge到本地)
  • git fetch origin 遠程分支:本地分支 (拉取遠程分支,並建立本地分支,但不切換分支)
  • git checkout -b 本地分支 origin/遠程分支(拉取遠程分支,建立並切換到本地分支)
  • git branch -r (查看全部遠程分支)
  • git branch -a (查看全部分支,本地的和遠程的)
  • git branch -d dev-Jan(刪除本地分支)

固然,仍是推薦看廖雪峯的Git教程,講的很詳細呀,加油啦

相關文章
相關標籤/搜索