做爲軟件工程專業的學生,對於之後在工做中可能要頻繁使用的重要協同工具Git的瞭解卻僅僅停留在據說過的層面,這顯然是不行的。感謝孟寧老師耐心細緻的講解指導,讓咱們得以揭開Git神祕的面紗。git
下面讓咱們一塊兒經過實操來熟悉Git這個工具github
下載並安裝vscode(下載安裝過程略)shell
注意:由於vscode自帶Git,並且有插件集成方便演示,因此選擇下載vscode。喜歡命令行操做的用戶能夠直接在官網下載Git工具
一、新建本地Git存儲庫,使用git init命令測試
二、查看.git文件夾中的結構fetch
hooks:這個目錄存放一些shell腳本;spa
objects:存放全部的 git 對象;插件
HEAD:這就是咱們常說的HEAD指針,它指向了當前分支;命令行
index:暫存區3d
三、新建一個readme.md文件,並用git status查看工做區
能夠看到在git工做區顯示新建的readme.md文件未被追蹤到,此時使用git commit是沒法提交的
四、使用git add命令將文件加入git暫存區
此時git已經能夠識別到readme.md
五、使用git reset將文件從暫存區移除
六、使用git commit命令提交文件到本地倉庫,-m參數用於輸入註釋
七、使用git log查看提交記錄
八、修改文件再次提交,並用git reset指令回到上一個版本
HEAD指針回到第一個版本
一、在github上找到一個倉庫,複製其地址
二、將倉庫地址設置爲git的遠程倉庫地址,並使用git clone命令從github上克隆到本地
三、在github上修改文件後使用git pull <遠程分支> <本地分支>命令拉取更新
git pull命令是git fetch與git merge的結合。能夠看到本地文件進行了同步更新,git push命令與其相似
在開發中參與項目時,已經發布的項目總體在master分支上不斷向前迭代,每一個人開發的功能爲了避免與項目混淆須要在完成最終測試前獨立開發,這個時候咱們會用git的分支及其相關操做
一、新建分支並切換到新分支git checkout -b <branch>
二、使用git checkout <branch>切換分支
三、切換到master分支並使用git merge命令將其與test分支合併
最終結果test分支併入master分支,合併後存儲庫中包含了兩個分支的文件,也可使用git merge --no-ff mybranch這將保留test分支爲一段獨立的分支線段
一、在分支master上修改文件並提交一次,查看git log --graph
二、使用git rebase -i HEAD^^,並刪除first commit
三、處理衝突
四、使用git rebase --continue繼續rebase
五、查看git log
first commit,second commit已經消失了,合併到了final commit中
本次實踐了幾個git的經常使用命令,從中已經能夠感覺到這款版本控制軟件的強大,後續將繼續實踐其餘命令,以期可以早日熟練使用
參考文獻:https://mp.weixin.qq.com/s/Km5KuXPETvG0wCGHrvj9Vg