Git還能這樣用?一文看懂Git最佳實踐!
共 19218字,需瀏覽 39分鐘
·
2024-06-03 09:15
??目錄
1 什么是 git
2 什么不是 git
3 選對工具
4 盡量在本地
5 分支策略
6 Merge 還是 rebase
7 處理合并沖突
8 不要 pull,要 fetch
9 小而完整的 commit
10 LFS 技巧
11 Git 的缺點
12 總結(jié)
01
02
-
克隆 repo; -
修改代碼; -
生成補丁; -
發(fā)到論壇或者支持的郵件列表; -
找作者來 review,合并補丁。
-
Fork 并克隆 repo; -
修改代碼; -
發(fā)出 merge request 或者 pull request。
03
04
05
-
從 develop 分支上新建一個 feature 分支; -
提交一些關(guān)于這個 feature 的代碼; -
合并回去; -
刪除這個 feature 分支。
06
-
在開發(fā)過程中可以用 commit 或者 amend commit; -
在發(fā)出 MR 的時候 squash 成一個 commit; -
在 MR 的迭代內(nèi)持續(xù)用 amend commit; -
在 MR 通過后用 rebase 進行合并。
07
-
強制 rebase。Fetch 一下整個 repo;把你的分支 rebase 到目標分支上的時候勾選 force;這時候在列表里選要拿去 rebase 的 commit。大部分時候這都能行。但有時候 git 因為分支太錯綜復雜而搞不清楚 commit,在列表里會有遺漏。 -
Cherry-pick。在目標分支上新建一個臨時分支;把有用的 commit 都 cherry-pick 過去;把你的分支 reset 到那個臨時分支上;最后刪掉那個臨時分支。
08
09
-
在“Feature”的頂端建立“Feature A”和“Feature B”兩個分支; -
切換到“Feature A”分支,刪掉其中特性 B 的代碼,開 amend 提交; -
把“Feature B”分支 rebase 到新的“Feature A”分支。
10
git lfs fetch --all
git add --renormalize .
11
12
往期推薦
最后
歡迎加我微信,拉你進技術(shù)群,長期交流學習...
歡迎關(guān)注「前端Q」,認真學前端,做個專業(yè)的技術(shù)人...
評論
圖片
表情
