摘要:完成本系列文章的閱讀以後,你將掌握git的基本概念與git的基本命令,可以在本地隨心所欲的完成代碼的提交撤銷保存修改等操作、可以流暢的參與多人協作,讓我們快點來學習吧!
上集回顧:
經過上一次的學習,傳送門 --> Git 版本控制,看這篇就夠了 (一)我們學會了下以內容,如果還不會的同學趕快補補課。
- Git的基本概念
- 知道了git的作用、歷史;
- 學會安裝配置Git,使用Git創建項目託管以及工作區和暫存區的概念
我們這一次是一次孤獨的版本控制管理,因為這次只有一個人孤軍奮戰,等下一次我們就可以體驗到多人協作的魅力啦!
本文核心點:
- 如何在本地提交你的代碼(創建、修改、刪除文件)
- 如何優雅的拉代碼(拉代碼的兩種方式pull、fetch)
- 什麼是分支以及分支操作 (創建、切換、刪除分支)
01
—
如何在本地提交你的代碼
還記得上次我們學習了工作區、版本庫、暫存區的概念,我們使用了淘寶商家、私人管家、私人倉庫來舉例,這一節我們還是用他們來舉例,你在本地隨心所欲的寫代碼,你會創建新的文件、修改歷史文件、甚至不滿意了就刪掉兩個文件這些都是可以的,因為你是老大聽你的。
你養了一個管家他就是你的本地版本倉庫,躲在根目錄下面,是名字叫 .git的一個隱藏文件夾,本地的所有直接針對代碼文件的操作都是在工作區完成的。
然後我們再用一系列命令給工作區的代碼放到暫存區裏,再通過一系列命令提交到版本庫中去,並且在提交到版本庫的過程中可以標記每次提交的代碼是新增了什麼功能、改了什麼bug、刪除了哪些文件;非常的直觀舒服,請容我細細道來。
新文件與修改
$ ls
README.md
$ touch file1.txt
$ git add file1.txt
$ git status
On branch master
Your branch is up to date with origin/master.
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
new file: file1.txt
$ git commit -m "[+]add new file1.txt"
[master 66cc488] [+]add new file1.txt
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 file1.txt
上圖操作包含:
- 創建新文件file1.txt
- add 添加修改的內容到索引
- status 查看修改的內容
- commit 把索引提交到本地分支
git add .
:監控工作區的狀態樹,此命令會把工作區的所有變化提交到暫存區,包括文件內容修改(modified)以及新文件(new),但不包括被刪除的文件。
git add -u
:他僅監控已經被add的文件(即tracked file),他會將被修改的文件提交到暫存區。add -u 不會提交新文件(untracked file)。(git add --update的縮寫),我們在寫一個的新的功能創建了一些新的代碼文件,我們暫時不想提交這些代碼,這種情況下就可以考慮此命令
git add -A
:是上面兩個功能的合集(git add --all的縮寫),一般新創建和刪除的文件都是要加到暫存區的,所以我們通常直接用這個命令就可以了。