主要是介紹git的一些概念和常用的命令行。雖然現(xiàn)在常用的ide要么自帶git客戶端虏肾,要么有git可視化插件,很方便欢搜,但是如果僅僅依賴這種git客戶端封豪,在遇到新的ide的時候,處理一些復雜的git命令還是需要重新找該插件的文檔炒瘟,不如掌握命令行吹埠,更具有通用性。
工作區(qū)疮装、暫存區(qū)缘琅、版本庫
理解git工作區(qū)、暫存區(qū)和版本庫的概念有利于git的使用
- 工作區(qū) : 用來編輯保存項目文件的地方廓推,也是用戶能直接操作到的地方胯杭。
- 暫存區(qū) : 英文叫stage, 或index。一般存放在 ".git目錄下" 下的index文件(.git/index)中受啥,所以我們把暫存區(qū)有時也叫作索引(index)做个。
- 版本庫 : 也叫本地版本庫鸽心,使用git commit 就是把暫存區(qū)的內(nèi)容提交到這個本地的版本庫。
以vscode開發(fā)為例居暖,我們提交文件通常兩步
- 我們會先使用git add顽频,把他們添加到暫存區(qū)
- 使用 git commit,把暫存區(qū)的內(nèi)容提交到本地版本庫
這時候我們的代碼資源就保存在本地的版本庫里了太闺。
分支(branch)
在開發(fā)中經(jīng)常需要多個分支來滿足開發(fā)的需求糯景。
比如創(chuàng)建一個新的分支,分支名為mvpInject
git branch mvpInject
查看分支
git branch
用上面的命令可以查看已經(jīng)創(chuàng)建的分支
切換分支
git checkout master
比如要刪除剛剛創(chuàng)建的mvpInject分支
git branch -d mvpInject
分支合并
先將分支切換到master分支省骂,然后運行下面的命令蟀淮,將mvpInject分支合并到master分支
git merge mvpInject
遠程倉庫
本地倉庫和遠程倉庫進行關聯(lián)
上面是在操作本地倉庫,但是實際項目中钞澳,需要與別人協(xié)作怠惶,這就需要一個遠程倉庫。
將本地倉庫和遠程倉庫進行關聯(lián)
git remote add origin git@xiangmuming.git
origin是遠程倉庫的名字轧粟,Git默認的叫法策治,git@xiangmuming.git是遠程倉庫的地址,這樣就把本地倉庫和遠程倉庫關聯(lián)起來了
將本地倉庫的內(nèi)容推送到遠程倉庫
git push <遠程倉庫名> <本地分支名>:<遠程分支名>
git push origin master
origin:遠程倉庫名字; master:本地分支的名字兰吟,將本地的master分支推送到origin倉庫的master分支通惫。如果master不存在,則會被新建混蔼。
實際上第一次把本地內(nèi)容推送到遠程會使用如下命令
git push -u origin master
相當于
git push origin master
git branch --set-upstream master origin/master
將本地倉庫master分支的內(nèi)容推送到遠程倉庫的master分支履腋,同時將他們關聯(lián)起來,以后每次推送都可以使用git push 了
遠程分支的操作
創(chuàng)建遠程分支
git push origin mvpInject
刪除遠程分支
git push origin :mvpInject
版本回退
回退到指定版本
git revert hash
參考