分支
- 查看本地分支
git branch
- 查看远程分支
git branch -r
- 查看本地和远程分支
git branch -a
- 删除指定本地分支
git branch -d 本地分支名称
删除本地分支可能出现的异常
当我们在一个分支中进行过操作(新增、修改、删除),若操作已经提交到了本地仓库中,在执行git branch -d 分支名称
删除指定名称的非当前分支时,会报错error: The branch 'function' is not fully merged. If you are sure you want to delete it, run 'git branch -D function'.
此时处理办法是:1. 切换到要删除的分支中,将代码进行合并到远程分支;或切换到本地其他分支中,使用git merge命令将要删除的分支的代码合并到已切换的分支中,再进行删除操作,即可完成分支的删除;2.执行git branch -D 分支名称
强制删除;
另外如果删除的分支为非当前分支时,执行删除操作时也会报错,强制删除都会报错,处理办法是切换到其它分支再进行删除
- 删除指定远程分支
注意:远程分支一旦删除,将无法进行回滚,删除远程分支的方法有两个步骤:
1,删除本地同名分支
2,执行git push origin :远程分支名称
- 切换分支
git checkout 分支名称
- 创建并切换到分支
git checkout -b 分支名称
提交代码
- 查看本地工作区,暂存区文件修改状态
git status
- 查看修改后的本地工作区中的文件与暂存区比较后得差异
git diff
此处查看的是本地工作区与暂存区的文件差异
- 将本地工作区中修改/新增/删除的文件添加到暂存区中 (尚未提交至本地仓库)
git add .
- 查看存入暂存区,未提交到本地仓库区的修改
git diff –cached
此处查看的是暂存区与本地仓库区的文件差异
- 提交文件(事先已提交至暂存区)至本地仓库区 `git commit -m "提交日志"
该命令会将git add .存入暂存区修改内容提交至本地仓库中,若文件未添加至暂存区,则提交时不会提交任何修改`
- 提交文件至本地仓库区(未提交至暂存区)
git commit -am "提交日志" 或者
git commit -a -m "提交日志"
此时会将本地工作区中没有提交到暂存区中的文件一并提交到本地仓库中
- 将远程所有分支代码拉取到本地
git fetch
用于别人新建分支push到远端以后,自己想在其它人的分支上做修改,执行此命令后,查看本地分支可能看不到拉取下来的分支,需使用
git checkout 分支名称
,这个时候就能够看到拉取下来的本地分支了,这个命令并不会将远端的分支代码合并到当前分支.
- 拉取远程指定分支代码合并到当前分支
git pull origin 分支名称
- 每次使用该命令前,需要保证本地工作区是没有任何修改代码的,也就是说需要将本地工作区编辑过的文件添加到暂存区(git add .),或提交到本地仓库中(git commit),才可以使用该命令拉取指定分支的代码合并到当前分支中。
- 说明:加载当前分支时dev分支,执行
git pull origin master
,就是将远程master代码合并到当前dev分支- 若只是执行
git pull
则拉取当前分支对应的同名远程分支- 此命令执行时,git会先进行自动合并,当代码行发生冲突时,需要先解决冲突,然后重新拉取代码再此提交到版本库
- 每次在操作完git commit命令后,必须拉取一下master分支代码,保持本地正在开发功能逻辑的代码分支代码是最新的,避免后续在提交时冲突过多或覆盖掉其他人的代码的问题出现
推送到远程
- 将所有提交到本地仓库的修改推送至远程仓库
git push origin 分支名称
值得注意的是,推送代码到远程分支时,需要将本地切换到待推送分支下,同时,在远程,如果存在同名分支则推送,如果不存在,也会推送到指定的分支下
删除文件
- 将版本库中某个文件删除
git rm 文件全路径
1,删除远程文件,cd 到文件所在文件夹下,执行
git rm 文件名
,然后执行git commit -am "日志(删除***)"
,最后执行git push origin 当前分支名
,即可将远程文件删除.
2,删除本地版本库中的文件,步骤通上,省去最后一步.
3,当然,也可以不cd 到目录下,git rm 文件全路径
,及跟文件所在全路劲也可以.
- 删除文件夹
git rm /文件夹
(待完善)