github 多個遠端倉庫的集合體
遠端倉庫 伺服器上的**倉庫
本地倉庫 在自己電腦上的**倉庫
工作區 寫**的地方
暫存區 暫時儲存**的地方
分支 永久儲存**修改的地方
git init 建立本地倉庫
git status 檢視當前的git狀態
git add 將工作區的修改提交到暫存區
git add . 新增全部的工作區檔案
git add 具體檔案路徑 提交乙個檔案
git commit 將暫存區的修改 提交到分支
git commit -m 『本次操作的注釋』
git branch 檢視當前本地分支
git branch -a 檢視遠端和本地所有分支
git branch -d 分支名 表示刪除分支 注意不能自殺
git push origin --delete issue-peiyou-20200508 刪除遠端分支
git checkout 分支名 切換分支
git checkout -b 分支名 建立新分支並切換
git log 檢視操作資訊
git reflog 檢視操作資訊
git reset --soft head^ 僅僅是撤回commit操作,不撤回add . 您寫的**仍然保留
git reset head^ 撤回commit和add 相當於 --mixed
head^
如果你進行了2次commit,想都撤回,可以使用
head~2
git reset --hard 版本id 版本回退與前進
git merge 分支名 分支合併
1.執行命令的分支 應該是母分支
2.將子分支合併到木分支上
分支合併過程中經常會產生衝突(多個分支同乙個檔案 有不同的修改 git工具不能確定保留哪乙個 產生衝突讓開發者自己解決)
git checkout 檔案路徑 // 忽略提交某個檔案
git commit --amend // 修改提交後的commit資訊內容
git stash //暫存當前的修改(可用於切換分支更新**之類的)
git stash pop // 恢復暫存的修改
git stash list // 檢視暫存歷史
git show + (commitid) 檢視對應提交的**差異
git log -p src/pages/message/actionbar.tsx // 檢視該路徑下的修改歷史
git log --graph --decorate --oneline 視覺化影象
git config --global --edit 全域性的快捷指令/全域性配置檔案
git diff commit commit 檢視兩個提交的差異
git cherry-pick 能夠把另乙個分支的乙個或多個提交複製到當前分支,具體使用如下:首先git checkout到另乙個分支,然後使用git log找到想要複製的commit 的id,記錄下來切換到自己分支,使用git cherry-pick [上面記錄的commit id] 回車即可!
遠端倉庫相關
o遠端倉庫已經建立 git clone url
o遠端倉庫沒有建立 建立本地倉庫 git init 在與遠端倉庫關聯 git remote add 遠端倉庫名(origin) 連線位址 git remote add origin push -u origin master
提交本地分支**到遠端倉庫的分支 git push 遠端倉庫名(origin) 分支名 (master)
更新本地** git pull 遠端倉庫名(origin) 分支名(mater)
.gitignore
gitflow (git工作流)
master 主分支 和線上**完全保持一致
預上線分支 測試分支
dev 開發分支 開發者的開發分支
個人分支 開發者在個人分支寫功能
bug 分支 線上**出現bug後的分支
主程建立遠端倉庫
在本地建立 dev分支
在dev分支初始化專案
將dev分支推送到遠端倉庫
其他人員
o先轉殖遠端倉庫**
o從dev切換出個人分支
o在個人分支開發功能
o將個人分支合併dev分支
o更新dev分支 git pull
o將dev 提交到遠端倉庫
多人操作同一資料庫
mongod --bind_ip_all
yapi easy-mock mock json-mock
npm install -g yapi-cli -registryyapi server
gitlab 流程 rebase的用法
從 dev切出去乙個分支git checkout -b 你的分支名字 (eg: issue-某某功能-20200221)
然後進行開發功能
開發完成之後git add . git commit -m 『message』
然後 git fetch
然後 git rebase origin/develop 解決衝突(develop指代線上穩定分支)
去編輯器裡解決完衝突(rebase有時是分步的,解決完需要git add .,git rebase --continue)然後繼續解決衝突
o如果不想rebase了,就git rebase --abort
衝突解決完了就git push origin 你自己建立的分支名字
最後去gitlab上建立乙個mr請求合併到develop分支(或組裡指定的穩定分支) 審核人填一下
然後審核人 codereview **可以的話,就給你合併到dev分支了
修改本地git分支名稱指令
git branch -m oldbranchname newbranchname
修改遠端倉庫(github)上的分支名稱
git本地分支名已修改,只需推送到遠端倉庫上,即可更換掉遠端倉庫的分支名稱
git revert 和 git reset的區別
git revert是用一次新的commit來回滾之前的commit,此次提交之前的commit都會被保留;
git reset是回到某次提交,提交及之前的commit都會被保留,但是此commit id之後的修改都會被刪除
撤銷(revert)和重設(reset)對比;
git revert 回滾了「單獨乙個提交」,它沒有移除後面的提交,然後回到專案之前的狀態。在 git 中,後者實際上被稱為 reset,而不是 revert。
git rebase 和 merge區別
rebase 會把你當前分支的commit放到公共分支的最後面,所以叫變基,就好像你從公共分支又重新拉出來這個分支一樣
merge 會把公共分支和你當前的 commit 合併到一起,形成乙個新的 commit
Git操作與命令
一 建立與合併分支 1 從master分支建立dev分支並切換到dev分支 git checkout master git checkout b dev 其中,git checkout b dev 等價於 git branch dev git checkout dev 1 git branch 檢視...
git的基本操作與命令
本地庫初始化 git init 注意 git目錄中存放的是本地庫的相關子目錄和檔案,不要刪除,也不要胡亂修改 設定簽名 git config user.name 使用者名稱 git config user.email email 一.基本操作 1.狀態檢視操作 git status 檢視工作區,暫存...
git操作命令
1.cd d 開啟磁碟 3.pwd 顯示當前的目錄 4.git init 把這個目錄變成git可以管理的倉庫 5.git add readme.txt 新增到暫存區裡面去 6.cat readme.txt 檢視檔案內容 7.git commit m readme.txt 把檔案提交到倉庫 8.git...