git
在git的服务器上有项目仓库,现在把这个服务器上的仓库下载下来(本地),那要用什么命令?
git clone 远程仓库地址
作用:克隆远程仓库到本地
克隆下来的仓库默认是master分支
不要在git管理的仓库里面下载另外一个仓库进来,这个要尽量避免不要出现
执行命令的时候没有error或者fatal就是没问题
本地工作区直接直接gitcommit 能不能提交到本地历史记录区 (不可以的)
建议大家在直接提交的命令的时候,先执行git status
git commit 会遇到的问题:
配置config
git config –global user.email ”登录邮箱”
git config –global user.name ”提交记录的用户名”
分支名称后面有 MERGING,代表现在的分支处于冲突状态下
git 基础操作
git status: 查看仓库的文件的状态
git add . : 把工作区的全部改变的文件提交到暂存区里面去
git commit -m ‘说明’: 把暂存区里面的修改提交到本地历史记录区
git push -u origin 分支名称(默认master): 把本地历史记录区的提交记录(多个提交记录)提交(同步)到远程仓库上
git 远程仓库地址的添加删除操作
git remote -v: 查看远程地址
git remote remove origin:删除本地项目的远程仓库地址
git remote add origin ssh地址: 在本地项目的远程仓库地址列表里面添加一个origin的地址
git 分支操作(master)
git branch:查看当前所在分支(本地分支)
git branch -a : 查看所有分支信息
git branch 分支名称: 创建分支
git branch -d 分支名称:删除本地分支
git push origin –delete 分支名称:删除远程分支
git branch 分支名称 HEAD@{number}:恢复删除分支
git fetch:同步远程仓库的分支信息到本地项目
git pull:同步远程仓库的代码到本地项目
git checkout 分支名称: 切换当前所在分支
git checkout -b 分支名称: 创建分支并且切换到新分支上
git merge 分支名称:合并分支
git push -u origin 分支名称:提交分支到远程仓库
为什么要有分支?团队开发中需要用到,一般开发整个大的功能模块,会分配任务给组内的开发人员,每个人负责的内容是不一样,整个组合在一起的代码就是这个大的功能模块。组内开发的时候就需要用到分支区分每个人的功能,master:生产(线上)环境的代码,beta:新版本功能内测的代码,产品经理,内部人员验收功能用的,dev:当前开发中的代码 如我现在负责登录模块,那么我就在dev分支的基础上开一个新的分支出来,git checkout -b login,每完成一部分小功能,建议大家commit一次(粒度很小的提交记录),push操作可以在下班前就可以了
git merge 需要合并的分支名称: 当前所在的分支合并需要合并的分支
制造冲突,两个分支修改同一个文件上的同一行,内容不一样,并且都有commit操作(commit操作前要记得add)
解决冲突,找到命令行上面CONFLICT(可能会有多行,也就是多个文件出现冲突),后面跟着的就是出现冲突的文件路径,然后分析并且修改代码,之后执行
git add .和git commit -m 'xxxx'这个时候再来看分支名称上是否没有了|MERGING这个标志,没有代表解决冲突完成,有代表还是没有解决冲突git fetch 和 git pull:因为一个项目是团队开发的,如果本地不存在的分支
git fetch,如果本地已经存在分支,远程仓库分支比本地要新,这个时候就用git pull origin 分支名称。重点:也可以理解为,pull就是同步远程代码,fetch就是同步远程分支,如果远程仓库新建分支,用fetch同步。
git merge最简洁用法
一、开发分支(dev)上的代码达到上线的标准后,要合并到 master 分支
git checkout dev
git pull
git checkout master
git merge dev
git push -u origin master
二、当master代码改动了,需要更新开发分支(dev)上的代码
git checkout master
git pull
git checkout dev
git merge master
git push -u origin dev
重点
- status:状态
- add:提交到暂存区
- push:同步提交
- origin:远程
- master(可以创建不同名称的分支,不一定是master):分支
- remote:远程地址
- branch:分支
- checkout:切换
- merge:合并
- pull:拉取
切换分支时 VScode所打开的对应项目文件,git命令切换完,文件也会随之切换


