工作中常用的git命令

  • 拉取项目
git clone [项目url]
  • 查看分支
## 查看所有本地分支
git branch
## 查看所有本地和远程分支 (romete开头的是远程分支)
git branch -a
## 会显示如下(*开头的代表你当前所在的本地分支)
* master
  pre
  remotes/origin/master
  remotes/origin/pre

## 刷新远程分支,新建远程分支的时候如果git界面工具没有及时看到,执行这个命令就出来了
git fetch
  • 切换、新建分支
## 切换分支。没有dev分支会报错。
## 如果有远程分支,没有本地分支,会在本地新建一个同名分支,并自动与该远程分支关联。
## 如果没有远程分支,有本地分支,切换
git checkout dev

## 以当前所在分支的代码为基础,新建一个本地dev_dev分支。
## 假如已经切换到了dev分支,就会新建一个本地dev_dev分支,代码与dev分支相同
git checkout -b dev_dev

## 提交本地dev_dev分支到远程
git add .
## 提交到本地仓库
git commit -m '注释'
## 未关联远程库的分支需要这样,如果已经关联了,直接 git push 就可以
git push -u origin dev_dev
  • 合并分支
## 假如mater分支合并pre分支
## 先切换至mater分支
git checkout master

## 再将pre分支合过来,一般都是合并远程pre分支
git merge remotes/origin/pre

## 如果没有冲突,push就行
git push

## 如果有冲突
## 查看冲突文件
git status

## 打开冲突文件
会看到这些特殊的行
<<<<<<< HEAD
=======
>>>>>>> remotes/origin/pre
意味着第一行到第三行中间出现了冲突,然后看需要哪一块代码,把冲突的代码块替换成需要的代码就可以了

## 例如这一块
    public DependencyBean dependencyBean() {
        DependencyBean dependencyBean = new DependencyBean();
<<<<<<< HEAD
        dependencyBean.setA(222);
        dependencyBean.getA();
=======
        dependencyBean.setA(56565);
        dependencyBean.hashCode();
>>>>>>> remotes/origin/pre
        return dependencyBean;
    }
## 解决后
    public DependencyBean dependencyBean() {
        DependencyBean dependencyBean = new DependencyBean();
        dependencyBean.setA(222);
        dependencyBean.getA();
        return dependencyBean;
    }


## 所以文件冲突解决后就可以提交了
git add .
git commit -m '解决冲突'
git push
  • commit撤回
## git commit 后想撤销 commit 
## ~1撤销到上个版本 如果想撤回n次commit,就 ~n
git reset --soft HEAD~1
  • 删除分支、tag
## 删除本地分支(当前所处分支不能为删除分支)
git branch -d [branch_name]

## 删除远程分支
git push origin --delete [branch_name]
例如: git push origin --delete feature/0.1.1

## 删除远程tag
git push origin :refs/tags/tagName
例如: git push origin :refs/tags/0.1.1.1
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值