查看本地ssh公钥:cat ~/.ssh/id_rsa.pub
1 本地有项目,和远程关联
git init //初始化本地项目
git add .
git commit -m 'xxx' //提交到本地库
git remote add origin https://github.com/xpromise/oa.git //关联远程仓库 (https... 仓库地址)
备注:如果此步关联错了,解决办法如下。
git remote remove origin
git remote add origin https://github.com/xpromise/oa.git
2 本地无仓库,从远程克隆
git clone https://github.com/xpromise/oa.git
3 常用命令
git add . //将所有文件添加到暂存区
git commit -m 'xxx' //提交到本地库
git push origin master //提交本地代码到远程仓库 (第一次提交加-u)
git pull origin master //拉取远程代码到本地
git status //查看仓库状态
git branch //查看本地所有分支 带*标记的是当前所在分支
git branch -r //查看远程所有分支
git branch -a //查看本地和远程的所有分支
git branch -d xxx //删除xxx分支
git checkout -b xxx //创建xxx分支 并切换到xxx分支上
git merge xxx //在当前分支合并xxx分支
git reset --hard HEAD^ //往上回退一个版本
4 常见场景
4.1 提交分支
git add . //添加修改文件
git commit -m '备注' //提交到本地库
git pull origin master //拉取远程最新的代码 (别人有提交,为了防止冲突,master代表某某分支)
git push origin master //提交本地代码到远程仓库
4.2合并分支
描述:我在newGateWay分支上开发的,现在要将我分支上的代码合并到dev分支
step 1 (将newGateWay提交到远程仓库)
git add .
git commit -m 'xxx'
git push origin newGateWay
step 2 (切换到dev分支)
git checkout dev
git pull origin dev //最好拉一下远程代码,因为不是你一个人开发,万一别人有提交呢
step 3 (合并)
git merge newGateWay
step 4 (提交)
git push
4.3 暂存分支
描述:多人开发,经常遇到开发某一个分支时,需要处理其他事情,这时就可以暂存手头的工作,进行其他工作,完事后再恢复,,继续工作
1.暂存操作
git status //查看当前状态
git add . //添加修改文件
git stash save '标识名字' //暂存
2.查看当前暂存的记录
git stash list //查看记录
3.恢复暂存
git stash pop stash@{index} //index是索引值,具体是多少通过git stash list查看
4.4 版本回退
描述:想要回到上一个版本
1.git reset --hard HEAD^
描述:想要回到之前的某一个版本
1.git log //查看日志
2.git reset --hard 版本号 //回退到某一个版本 具体的版本号用git log命令查看
3.git push -f origin xxx //强制推送到远程
4.5 解决冲突
描述:当执行了git merge newGateWay的时候,左侧出现合并更改的时候,说明有冲突了
1.点击左侧的文件
2.这时候需要去选择要哪个代码了,如图:若不小心选错了,ctrl+z撤回即可重新选择,选择完保存就可以了。
3.保存完成的样子
4.重新提交了(重新走一遍提交流程即可,左侧没有可修改的文件才算提交完成)。