"Code tailor",爲前端開發者提供技術相關資訊以及系列基礎文章,微信關注「小和山的菜鳥們」公衆號,及時獲取最新文章。
在這邊,咱們採用的是 MacBook 版的 git
實戰方式,我在這邊使用的是 iTerm2,能夠展現分支狀況,以及狀態,iTerm2 的安裝方式能夠參考這篇文章 iTerm2+zsh 安裝和樣式調整,讓你的 終端 更加實用炫酷前端
brew install git
咱們在桌面新建一個名爲 gitTest
的文件夾git
而後在終端命令中,cd
訪問到相應的文件夾,而後執行下述命令新建一個 git
倉庫github
git init
這樣就能夠在文件夾下看到一個 .git
文件了shell
若是你看不到 .git
文件也不用慌張,只是隱藏文件沒有打開bash
# 打開全部隱藏文件 defaults write com.apple.finder AppleShowAllFiles -bool true # 還須要關閉全部Finder以後 從新打開有效 killall Finder
這兩句執行,並無什麼特別的返回結果,可是你從新打開文件夾以後,就能夠看到 .git
文件了微信
執行下面的命令來克隆一個遠端倉庫app
git clone https://github.com/Huzq-Strive/git-application-docs.git
這是克隆成功時的返回截圖spa
clone
以後,文件中多了遠端倉庫的內容.net
首先 cd
訪問到你 clone
的文件中命令行
添加本身的文件夾和文件進去
而後經過 add
命令添加文件到 暫存區
# cd 進文件 cd git-application-docs # 添加到 暫存區 git add myFirstGit/firstTryGit.md # 若是文件被忽略 則能夠強制add git add -f myFirstGit/firstTryGit.md
這邊多了一個 add
狀態
git commit
命令是用來在本地提交內容的,能夠記錄你本次修改內容。
# 第一次提交 commit本身的文件 git commit -m "feat: first add file" # 第二次提交 文章作了修改 git commit -m "fix:second try"
如今咱們去修改文件中的內容,再進行第二次提交
注意:在使用commit
以前必定要進行add
操做,此次若是有修改,也請add
修改文件後進行commit
commit
以後就是 push
了,也就是提交咱們本地的改動到遠端倉庫
# 將文件傳到遠端倉庫 git push
push
成功的返回結果以下:
若是以前的代碼不是經過 clone
下來的,那你就須要先連接倉庫,才能夠 push
# 連接倉庫 git remote add origin https://github.com/rookies-of-XHS/git-application-docs.git
branch_try
的分支git checkout -b branch_try
# 切回main分支 git checkout main
# 刪除新建分支 git branch -d branch_try
push
本地建立的分支到遠端倉庫。git push https://github.com/Huzq-Strive/git-application-docs.git branch_try
這時候,咱們來看看遠端的倉庫就多出了一個分支
在 開發中 咱們常常會 多人進行操做 這時候就會有別人的 push
你須要 pull
下來
# 拉下修改內容 git pull
這邊爲了演示 pull
操做咱們從新建了一個本地倉庫,用來展現兩我的同時操做,咱們就跳過建倉庫等步驟,就直接修改內容,而後 push
到倉庫了。這之後你就能夠再原先的文件下使用 pull
命令了。
切換到原來的文件夾目錄下使用 pull
而後本身的分支修改完成沒有問題以後,也須要合併到 main
分支,使用如下命令
# 在 main 分支下 執行 git merge branch_try
這是新分支上加的內容
這是合併以後的結果,多了個 push
而後咱們再 push
一下到遠端
這時候你就能夠發如今遠端的 main
分支也有了 branch_try
分支的內容
並非每一次合併都會沒有問題,有時候會產生 衝突( conflicts
),這時候你就須要去解決衝突,須要修改文件手動合併這些衝突,改完以後須要執行以下命令標記爲衝突已解決。
如今咱們來演示一個衝突
這是第二個文件下作的修改。
而後 add & commit & push
一下。
git add myFirstGit/firstTryGit.md git commit -m "resove conflicts" git push # 傳到遠端
這是第一個文件下的修改。
兩個都在同一個文件內作了修改,執行 add & ommmit
兩個命令。
git add myFirstGit/firstTryGit.md git commit -m "begin" # 這邊要先commit以後才能夠pull
這邊執行 pull 一下。
git pull # 拉去,產生衝突
你就會發現這裏是有衝突的,fix conflicts and then commit the result
,須要你解決衝忽然後提交一下。
這裏你就發現了這麼一些奇怪的東西,將它們都刪除了以後,保存文件。
在使用命令行, add & commit
一下,就能夠 push
到遠端了。
git add myFirstGit/firstTryGit.md git commit -m "resolve conflicts" git push # 到這一步就完成了
git log
命令來查詢 歷史的提交記錄,能夠看到以提交的 ID
git log
1.0.1
的標籤git tag 1.0.1 2eda8fcac6
git log --author=hzq # 這裏查看的做者本身的提交記錄
git log --pretty=oneline
git log --name-status
以上就是咱們今天 git
實戰的所有內容了