一般流程
git pull 更新分支相关代码,也可以等自己开发完之后再更新,然后推送
git add .
git commit -m 'xxx'
部分要求lint格式,需要注明
git remote add origin (SSH)
git branch -M main
git push origin main
远程推送时的具体流程 remote enumerating object remote couting object remote compressed object remote total & reused & pack-reused
receiving object resolving deltas updating filesu
命令
讲一讲git stash?
git stash相关命令用于操作git中的本地分支缓存,相关命令主要有git statsh pop和git statsh apply
git statsh pop和git stash apply都是提取缓存到当前项目中
区别是:
git stash pop会在提取的同时清除掉git在本地的缓存
git stash apply则在提取的同时保留git在本地的缓存
Git revert 和git reset有什么区别
一般的使用时,如果已经push了,使用revert,如果没有,就是用reset
集中式-svn;分布式-git
git submodule
git submodule add xxx
git submodule update --init --recursive 递归拉取子模块
git bisect
搜索。使用二分法对有bug的提交定位,查找哪一次代码引入了错误
git stash
保存。暂存当前分支下的更改,通过git stash pop还原
git merge
合并分支。两个分支合并为新的提交,其会产生两个父节点
git rebase
提交。将当前分支的提交,到目标分支;可能会改变hash值;容易使分支混乱,不知道从哪个分支拉取的代码
git fetch
更新本地仓库。 将remote仓库更新的内容映射到本地,不会修改当前目录和分支
git revert
revert 使用一个新的commit 来回滚你希望回滚的commit, reset 是直接HEAD 指向回退的commit
git reset
执行的是 HEAD的指向的回退
git log
git log -p查看文件变动信息
git log -p -1234235678797654321....
git log --oneline
git log oneline --name-only文件发生变化
git log oneline --name-status
git checkout
恢复到上一次版本,撤回到上一次提交的内容:
git checkout -- xxx.xxx 恢复上一个版本
git branch
git branch --merged
显示出来说明和master提交点相同
说白了显示出来的是可以删除了的
git branch --no -merged
git branch -d xxx
强制删除(没有合并但要删除):
git branch -D xxx
git alias
git命令别名
git remote
-v
remove origin
add origin xxx
git config
git config --global user.email "1619346963@qq.com"
git config --global user.name "emVisible"
# ===================================================================
线上分支: master
本地分支: fix
修复bug:
1. 切换到master目录,同fix分支合并实现bug的修改
git checkout master => git merge fix => git push origin master
2. 拉取fix最新代码到master上,
(git checkout fix => git rebase master )=> (1操作)
兼容问题
Windows端不支持*nix的格式,有遇到这个问题
方便地解决是更换到WSL,因为出了一个问题还会出其它的问题