我对git的理解:git有3个容器(暂存区、本地仓库、公共仓库)本地有两个一个是暂存区 git add .命令将代码添加到暂存区,git commit -m "m" 将暂存区的内容添加到本地仓库,git push 将本地仓库的内容推送到公共仓库。
一、更新和提交代码
git 克隆代码: git clone http://www.test/.....
$ git pull 拉取公共仓库关联分支的代码(每次提交的时候先拉代码,如果有冲突先解决在提交)
$ git push 提交代码到公共仓库
二、查分支
-
查看分支
$ git branch -a(我使用的idea开发工具,remotes 上面是本地分支;*后面是当前所属分支)
demo
dev_2019
dev_20190129
master
* staging
remotes/origin/HEAD -> origin/master
remotes/origin/dev_2019
remotes/origin/dev_20190129
remotes/origin/master
remotes/origin/staging
2.切换分支
$ git checkout master(从当前staging分支切换到master主分支)
3.查看当前状态(是否有未提交的修改)
$ git status
三、创建分支(并关联到远程分支)
- $ git checkout -b test (创建本地分支名为test)
- $ git push origin test (关联远程分支如果没有则创建远程分支test)
四、修改分支名
不在修改的分支上:
$ git branch -m demo(原分支名) test(新分支名) (将本地的demo分支修改名称为test)
当前在demo分支上:
$ git branch -m test
修改远程分支名称:先删除远程分支,在新建远程分支并关联。
五、删除分支
$ git push origin :test (删除远程分支,谨慎使用)
$ git branch -d test (删除本地分支)
六、合并分支
$ git merge staging (当前分支是master主分支,要合并staging分支上的代码(如果staging分支有未提交到git远程仓库则会失败))
踩过的坑:提交代码最好用命令提交,有一次用idea的快捷操作提交代码没有提上去;本地分支和远程分支名称要一致;我们项目用的阿里云做git仓库有时候提交不上去代码(可能是网络原因);当项目已经上线时,最好每个新加功能或者bug都拉新的分支(bug和新功能在一个分支上,新功能没做完单修改的bug要上线。。。。)