“ 必須教會你如何使用 git 工具、建議收藏”
Hello,大家好。我是公衆號“八點半技術站”的小編-Bruce.D。
今天是週三(2020-04-08),分享一句諺語 “一日無二晨,時過不再臨” 。分享給大家的是 「工具 模塊」- git 部署、及命令。
在這裏,大家可別跟我擡槓說我就用編輯器自帶git工具,不手動用git 命令什麼一系列,沒必要。我分享的技術點,是給不熟悉使用 git 的人,希望可以通過此篇文章以後完全獨立部署git 以及運用git。
作爲今天的你,如果還不會使用git,確實說不過去,那麼就仔細閱讀閱讀吧。
01
—
Git 部署流程
在這裏,我會按照實際公司開發操作步法,講解我們如何操作 master 這個分支,具體拆分講解給大家。
第一步:
首先我們需要準備一些東西 ,有 git 安裝包, 賬號。
git地址下載:https://git-scm.com/downloads
第二步:
創建一個文件夾
mkdir 文件夾名稱
然後將這個文件夾納入版本庫控制
git init
第三步:
然後創建一個文件
touch readme.txt
將這個文件納入版本庫
git add readme.txt
第四步:
然後將這個文件提交到暫存區
git commit -m "註釋"
接下來我們把我們需要版本控制的文件上傳到我們總倉庫 GitHub ,這裏呢需要對我們的github和我們本地電腦進行連接。
第五步:
首先,在本地做好鏈接的配置
git config --global user.name "你的用戶名"
git config --global user.email "你的郵箱號"
第六步:
然後需要我們生成一個密鑰完成鏈接
生成SSH密鑰過程:
1.查看是否已經有了ssh密鑰:cd ~/.ssh
如果沒有密鑰則不會有此文件夾,有則備份刪除
2.生存密鑰:ssh-keygen -t rsa -C “[email protected]”
按3個回車,密碼爲空。
這樣我們的電腦的 user 目錄下生成了一個.ssh文件夾 裏邊有兩個文件 分別是公鑰和私鑰。
第七步:
打開公鑰 複製
然後登陸github 點擊右上角的 logo 選擇 setting 進入設置頁面
選擇ssh key 添加
這樣 本地電腦和github 就建立了連接
第八步:
然後我們要把本地的文件 提交到線上
git remote add origin 你的版本庫的地址
第九步:
然後提交
git push -u origin master
此外 如果對文件有操作 重複上邊的命令
這樣時間文件的提交了
第十步:
下載 選好文件夾 在選好的文件夾裏執行命令
git clone 你的版本庫地址
這樣整體的一套master分支 的操作就完成了。
如果哪裏還是不太明白或者有其他疑問,那麼加入底部 wechat 技術羣聊,直接提問你的問題。
02
—
Git 常用命令彙總
這裏講解的是,我們日常用的一些命令,別問我爲什麼喜歡用命令而不用工具,對於我來說,命令方便簡潔,處理問題也迅速。每個人風格問題,與個人技術水平無關。切勿擡槓......
# 配置用戶名
git config --global user.name "xxx"
# 配置郵件
git config --global user.email "[email protected]"
# clone遠程倉庫
git clone git+ssh://[email protected]
# 查看當前版本狀態
git status
# 添加xyz文件至
git add xyz
# 增加當前子目錄下所有更改過的文件至index
git add .
# 提交
git commit -m 'xxx'
# 合併上一次提交(用於反覆修改)
git commit --amend -m 'xxx'
# 將add和commit合爲一步
git commit -am 'xxx'
# 刪除index中的文件
git rm xxx
# 遞歸刪除
git rm -r *
# 顯示提交日誌
git log
# 顯示1行日誌 -n爲n行
git log -1
# 顯示提交日誌及相關變動文件
git log --stat
# 顯示某個提交的詳細內容
git show dfb02e6e4f2f7b573337763e5c001
# 顯示HEAD提交日誌
git show HEAD
# 顯示HEAD的父(上一個版本)的提交日誌
# ^^爲上兩個版本 ^5爲上5個版本
git show HEAD^
# 顯示已存在的tag
git tag
# 顯示v2.0的日誌及詳細內容
git show v2.0
# 顯示所有未添加至
git diff
# 顯示所有已添加
git diff --cached
# 比較與上一個版本的差異
git diff HEAD^
# 比較遠程分支master上有本地分支master上沒有的
git diff origin/master..master
# 增加遠程定義(用於push/pull/fetch)
git remote add origin git+ssh://[email protected]
# 顯示本地分支
git branch
# 顯示包含提交50089的分支
git branch --contains 50089
# 顯示所有分支
git branch -a
# 顯示所有已合併到當前分支的分支
git branch --merged
# 顯示所有未合併到當前分支的分支
git branch --no-merged
# 本地分支改名
git branch -m master master_copy
# 從當前分支創建新分支master_copy並檢出
git checkout -b master master_copy
# 切換版本
git checkout dev
# 合併遠程master分支至當前分支
git merge origin/master
# 合併提交ff44785404a8e的修改
git cherry-pick ff44785404a8e
# 將當前分支push到遠程master分支
git push origin master
# 刪除遠程倉庫的hotfixes/BJVEP933分支
git push origin :hotfixes/BJVEP933
# 獲取所有遠程分支(不更新本地分支,另需merge)
git fetch
# 獲取遠程分支master並merge到當前分支
git pull origin master
# 重命名文件README爲README2
git mv README README2
# 將當前版本重置爲HEAD(通常用於merge失敗回退)
git reset --hard HEAD
# 刪除分支master/dev(本分支修改已合併到其他分支)
git branch -d master/dev
# 強制刪除分支hotfixes/BJVEP933
git branch -D hotfixes/BJVEP933
# 圖示當前分支歷史
git show-branch
# 顯示提交歷史對應的文件修改
git whatchanged
# 撤銷提交dfb02e6e4f2f7b573337763e5c001380
git revert dfb02e6e4f2f7b573337763e5c001380
# 圖示提交日誌
git log --pretty=format:'%h %s' --graph
# 文件中搜索文本“delete from”
git grep "delete from"
#查看本地分支
git branch
#查看遠程分支
git branch -a
#創建本地分支
git branch 文件名
#查看當前版本號
git reset --hard HEAD
#刪除遠程分支
git push origin:分支名
#查看分支關聯
git branch -vv
#知道文件是哪個分支拉取的
git remote -v
在這裏,8分鐘的git部署流程 和 常用命令我們也就講解完了。有一個小的個人建議,如果你對git 不熟悉 or 你是初學者,建議收藏此篇。因爲在你需要的時候,可以通過此篇技術文章找到你所需要的點。
小提醒:如有其它疑問&難點,可加入下方wechat技術羣聊,進羣提問你所遇到的問題點。
————————end————————
歡迎大家加入WeChat 技術交流羣「wechat:xzzs730」
技術羣交流 長按 ↑ 上方二維碼 掃碼加羣
鏈接地址:技術羣分享-存檔記錄
https://github.com/gtcarry888/WeChat-Sharing-records
如有其他問題,可留言至 [email protected] 郵箱。