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
## git commit 后想撤销 commit
## ~1撤销到上个版本 如果想撤回n次commit,就 ~n
git reset --soft HEAD~1
## 删除本地分支(当前所处分支不能为删除分支)
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
|