1,克隆远程代码
git clone [email protected]:GsonXiaoSha/FDtest.git
2,分支操作
查看分支:git branch -a
创建分支:git branch myui
切换分支:git checkout myui
创建并切换分支: git checkout -b myui
复制远程的分支新建分支并且切换: git checkout -b feature origin/feature
删除分支:git branch -d myui
恢复分子:git branch
3,本地操作代码修改
git add .
git commit -m "提交说明"
4,拉取远程某分支(origin ui),看下远程代码是否更新
git fetch origin ui
git fetch origin feature_yc:feature_loc 拉取远程分支feature_yc并在本地创建feature_loc,合并代码
5,合并某分支(origin/master)到我们的当前分支
git merge origin/master
6,把代码推送到远程仓库(master)
git push origin master
7,拉取远程分支(origin master)并合并到当前分支
git pull origin master
8,查看当前状态
git status
9,查看日志
git log
10,版本回退
git reset --hard HEAD^ //回到上一个版本
git reset --hard 123456 //回到指定的版本commit id
11,查看连接的远程仓库地址
git remote -v
12,合并什么鬼的
shift+; x
【实操】
2,切出功能分支进行开发: 从develop分支切出功能分支开发
1,本地从develop新建出新的功能分支feature
git checkout -b feature origin/develop
2,进行开发相关的功能开发
git add . git commit -m "ss"
3,推送到远程,远程不存在即需要
git push --set-upstream origin feature
4,可能再次进行一系列的修改
5,更新本地的develop,同步develop的修改
git checkout develop git pull
6,合并develop的更新,保持分支为最新的
git checkout feature
git merge develop
git push origin feature
3,开发途中,需要保存当前的修改,然后切换分支:
git stash //可用来暂存当前正在进行的工作
git stash pop //回到暂存的开发工作中
4,撤销操作:
(1)add 撤销:
git status //先看一下add 中的文件
git reset HEAD //如果后面什么都不跟的话 就是上一次add 里面的全部撤销了
git reset HEAD XXX.java //就是对某个文件进行撤销了
(2)commit 撤销:
git log //查看日志,可找到commit id
git reset --hard HEAD^ //回到上一个版本
git reset --hard 123456 //回到指定的版本commit id
(3)push 撤销:
git log //查看日志,可找到版本号
git reset --hard HEAD^ //回到上一个版本
git reset --soft 123456 //回到指定的版本号
git push origin feature --force //强制push到远程
5,拉取别人做好的远程分支到本地进行开发:
git fetch origin feature:feature
6,删除远程分支和本地分支:
git push origin --delete featrue //删除远程feature分支
git branch -D featrue //删除本地feature分支
7,对比两个分支的差异:
1. 显示出branch1和branch2中差异的部分: git diff branch1 branch2 --stat
2.显示指定文件的详细差异: git diff branch1 branch2 具体文件路径
3. 显示出所有有差异的文件的详细差异: git diff branch1 branch2
8,远程仓库地址发生改变时:
1,查看远程连接的仓库地址: git remote -v
2,删除远程仓库连接: git remote rm origin
3,重新新建新的远程仓库连接: git remote add origin 远程git的地址