git常用命令以及方法大全 https://www.cnblogs.com/miracle77hp/articles/11163532.html
git在idea中能用的前提条件–git环境变量配置好;git的exe文件路径在idea中配置正确。
1、分支操作
git status 查看本地当前分支有修改待提交的文件
git fetch 拉取远程分支,(让本地能够查看最新的远程分支)
git branch 查看本地分支
git branch -r 查看远程分支
git checkout 本地分支名:本地切换到指定分支,并更新工作区
**删除分支:**
git branch -D XXX; 删除本地分支XXX (必须在本地其他分支上,才能删除另一个本地分支)
git push origin --delete XXX 删除远程分支XXX 方法1
git push --delete origin XXX 删除远程分支XXX 方法2
**分支切换和拉取操作:**
git checkout -b dev_zcl origin/dev_zcl 新建本地分支dev_zcl,并与远程dev_zcl分支相关联
git checkout - 本地切换到上一个分支
git checkout [branch-name] 本地切换到指定分支,并更新工作区
**git基于历史commit创建分支:**
常用于不同分支并行开发时,从基线分支基于历史commit创建一个新的临时分支,然后将该分支合并到开发分支的场景。合并后可以删除该临时分支
步骤:
1、git log 确定需要取出版本的commit值
2、git branch <branch name> <SHA1> 基于该 commit(即SHA1串)创建分支
3、git checkout <branch name> 切换到该新分支
备注:步骤2,3可以合并成 git checkout -b <branch name> <SHA1>
git基于历史commit回滚:
如果在某个分支上不小心误commit了需要回滚,可以使用该方法
步骤:
1、使用git log 命令或者在IDE的log标签下确认要回滚的目标commit位置
2、使用git reset命令或者在IDE的log标签下右键该log,选择“Reset current branch to here”。这样就会回滚到该commit位置
3、在本地将不需要commit的files直接rollback即可
**更新代码**
方法1、git pull origin 远程分支名:本地分支名
备注:若本地和远程分支名称相同,直接 git pull 即可
方法2、针对某个分支,更新到某个历史commit版本
git checkout <SHA1>就行。用detached HEAD特性.
**合并代码**
场景1--合并整个分支
git merge master //将master分支合并到本地当前分支
场景2--更细粒度合并--合并指定的commit SHA到当前分支
git cherry-pick <commit SHA1> <commit SHA2>...
案例:假设需将 master 分支的部分 commit 合并到 dev 分支,具体步骤如下:
1、git checkout master --本地切换到 master 分支
2、git pull 拉取master分支的所有更新,避免后续 cherry-pick 出现 bad object 错误
3、git checkout dev
4、git cherry-pick <commit SHA1> <commit SHA2>...
备注:若执行 git cherry-pick 报错 commit is a merge but no -m option was given,解决方案参考:https://www.jianshu.com/p/f38d696f6b02
场景3--解决合并冲突问题
冲突场景如下:将远程分支master合并到开发分支 dev 时,发现有冲突无法直接合并
冲突解决步骤:
1、在 idea 的 terminal 窗口或者git bash的窗口输入如下命令,下同
git fetch origin --获取远程分支信息
git checkout master --切换到本地 master 分支
2、git pull -- 更新本地master分支,和远程同步
3、git checkout dev --切换到本地 dev 分支
4、git merge --no-ff master --将本地master内容合并到 dev,此时有冲突的内容会显示出来,如下图
![git merge出现冲突的效果图](https://img-blog.csdnimg.cn/bdc78145fc2a4d778bbc4a450bd33159.png#pic_center)
5、点击 Resolve ,手动处理每个文件中的冲突
6、git push origin dev --将本地dev分支push到远程
**回滚代码**
git revert XXX--回滚某次merge过的commit
2、gitlab修改远程分支名称–已经推送远程-假设本地分支和远程对应分支名称相同
(1)重命名远程分支对应的本地分支 git branch -m oldName newName
(2)删除远程分支 git push --delete origin oldName
(3)上传新命名的本地分支 git push origin newName
(4)把修改后的本地分支与远程分支关联 git branch --set-upstream-to origin/newName
3、前端代码提交操作
前端代码提交命令
1、vscode中点击待提交文件后的+,暂存(或者使用命令 git add 待提交的文件路径)
2、在终端输入如下命令
git commit --no-verify -m '注释内容'
git push