git指令详情使用、删除、修改、合并等指令的使用
一、git的使用
//1、数据的拉取(多人开发同一分支时,先拉取后提交) git pull //2、查看数据是否有更改 git status //3、添加本地数据到暂存区(git add . 会根据.gitignore文件中设置进行过滤,而git add *不会过滤) git add . //4、进行数据的上传说明(尽量说名提交的功能模块或编写的代码信息,有利于后期查看提交日志) git commit -m '提交说明' //5、提交代码到库中(只会将暂存库中的代码提交到库中) git push
二、分支的删除
//我现在在dev20181018分支上,想删除dev20181018分支 1、git checkout dev20180927 //先切换到别的分支 2、git branch -d dev20181018 //删除本地分支 3、git branch -D dev20181018 //如果删除不了可以强制删除 4、git push origin --delete dev20181018 //有必要的情况下,删除远程分支(慎用) //注:上述操作是删除个人本地和个人远程分支,如果只删除个人本地,请忽略第4步
三、分支修改名称
\\先进行修改本地名称--》然后删除远程库中的名称--》最后将新的推送上去 1、git branch -m '旧分支名称' '新分支名称' //进行名称修改 2、git branch -d '旧分支名称' //删除本地分支 3、git push -u origin '新分支名称' // 将分支推送上去 4、git push origin --delete '旧分支名称' //如果有需要可以删除远程分支(慎用) \\如果不需要删除远程分支,请忽略第4条
四、合并分支
//我现在在dev20181018分支上,想用master合并dev20181018分支 1、git checkout master //先切换到主分支 2、git pull //进行代码拉取一下 3、git branch -a //查勘所有分支是否拉取下来(一般可以不管) 4、git merge '要合并的分支名' //进行分支合并(如果发生冲突、合并会暂停,解决冲突) 5、git status // 解决冲突后进行状态查看,进行推送代码 6、git add 冲突文件 //解决冲突之后,将冲突文件提交暂存区 7、git commit //如果不是使用git commit -m “备注” ,那么git会自动将合并的结果作为备注,提交本地仓库 8、git push //提交远程库
五、退回分支
git log //查看推送版本信息 git log --pretty=oneline //查看推送信息版本信息,只显示版本号 git reflog //查看推送版本信息(包括退回的版本信息) git reset --hard HEAD^ //回退上一个版本 git reset --hard HEAD^^ //回退上两个版本 git reset --hard HEAD~50 //回退第50个版本 git reset --hard 版本号 //回退到指定版本
退回可以参考:https://www.cnblogs.com/GTbk/p/16112876.html
六、Git 清空工作区和暂存区
1. 还没有进行 add . 和 commit 操作:
//命令:
git checkout .
//只能清空全部已修改的问题件, 但是对于新建的文件和文件夹无法清空, 必须组合下面命令;
//命令:
git clean -d
//清空所有新建的文件和文件夹;
2. 已经 add . 了, 用如下命令重置
git reset .
需要暂存本地代码的可以调转:https://www.cnblogs.com/GTbk/p/16173340.html
额外的git指令:
git push -u origin '分支名'//将新分支推送到远程库中 git checkout //切换分支 git checkout -b '分支名' //创建分支并切换到新创建的分支中 git push origin '分支名' //将当前分支内容导入到指定分支中 git branch //查看当前分支内容(有可能库中有分支,但本地查不到) git branch -a //查看所有分支内容(不管本地还是远程都显示出来) git fetch //更新出远程分支索引 git branch //查看本地所有分支 git branch -r //查看远程所有分支 git branch -a //查看本地和远程的所有分支 git branch '分支名' //新建分支 git branch -d '分支名' //删除本地分支 git branch -d -r '分支名' //删除远程分支,删除后还需推送到服务器 git push origin:'分支名' //删除后推送至服务器
git push -f //强制推送数据,用本地覆盖远程的
//git中一些选项解释: -d --delete:删除 -D --delete --force的快捷键 -f --force:强制 -m --move:移动或重命名 -M --move --force的快捷键 -r --remote:远程 -a --all:所有