git克隆下来只有master分支,切换其它分支
当我们 git clone + 远程仓库地址 下来代码之后,git branch 发现只有master分支,而我们大多时候都是在其它分支处理事情的,所以我们用git branch -a 查看所有分支
上图我已经切换到非master的dev_1.5分支,已经正式使用,要想达到这个最终目的,我们只需要
git checkout -t origin/xxx (xxx指你要切换的分支名,比如我的就是dev_1.5)
现在 git branch 查看一下 ,大功告成
git常用命令
查看本地分支: git branch
查看所有分支: git branch -a
切换到本地xxx分支: git checkout xxx
查看状态: git status
切换到远程xxx分支: git checkout -t origin/xxx
查看commit日志: git log
补充:git查看当前用户信息
git config user.name # 当前登录用户
git config user.email # 当前登录用户邮箱
git config --global user.name 'namexx' # 修改登录用户
git config --global user.email 'exmailxx' # 修改登录邮箱
git config --global user.password 'passwordxx' # 修改登录密码
为了熟悉Git
的分支管理操作,来练习一下
使用分支意味着你可以从开发主线上分离开来,然后在不影响主线的同时继续工作
克隆指定分支
git clone -b dev(分支) http://xxxr.git(仓库地址)
创建Git分支
- 提取在
gitee
上创建一个测试分支的仓库,我新建了一个test
仓库 - 在本地电脑中新建一个
test
文件夹,进入test
文件夹初始化仓库
git init
3. 在 test
文件夹中新建 master.txt
和 README.md
文件,然后把这两个文件提交到之前创建好的远程仓库中去
git add .
git commit -m 'first commit'
git remote add origin https://gitee.com/dulily/test.git
git push -u origin master
到目前为止 都是很常规的一系列操作,仓库中也只有 master
一个分支,接下来我们开始创建一个 dev01
分支
git branch dev01 // 创建分支 dev01
git checkout dev01 // 切换到分支 dev01
// 上面两条命令可以简写为
git checkout -b dev01
// 提交当前新建分支到远程
git push -u origin dev01
git branch // 查看分支,带 * 表示当前分支
此时创建好的 dev01
分支的内容是 master
分支的内容,我们修改 dev01
分支的内容后,三连跪提交到远程
git add .
git commit -m '提交dev01分支的内容'
git push --set-upstream origin dev01
将远程分支拉取到本地仓库
在当前本地仓库切换到远程仓库指定分支,同时将远程的分支内容拉取到本地仓库
git checkout -b 分支名称
git pull origin 远程分支名称
创建并克隆分支内容
在本地创建分支并克隆分支内容
在此即克隆 master
分支的内容,在 master
分支操作
git checkout -b dev02 origin/master
此时查看分支会出现两个分支
git branch -> master dev02
同步到远程
git add .
git commit -m '创建dev02分支'
git push origin HEAD
修改分支名称
假设原分支名为 oldName
,想要修改为 newName
,在 master
分支上执行命令
远程分支重命名
远程分支重命名表示已经推送到远程—即本地分支和远程分支对应的分支名称相同
- 重命名远程分支对应的本地分支
git branch -m oldName newName
- 删除远程分支
git push --delete origin oldName
- 上传新命名的本地分支
git push origin newName
- 把修改后的本地分支与远程分支关联
git branch --set-upstream-to origin/newName
本地分支重命名
表示本地分支还没有被推送到远程
git branch -m oldName newName
删除分支
删除本地分支
git branch -d 分支名
删除远程分支
git push origin --delete 分支名
此时,远程分支和本地分支都只有 master
了
合并分支
将分支代码合并到主分支
- 首先切换到分支
git checkout 分支
- 使用
git pull
把分支代码拉下来
git pull
- 切换到主分支
git checkout master
- 把分支代码合并到主分支
git merge 分支
- 推送到远程
git push || git push origin HEAD
或者使用tortoisegit合并分支代码
要求:把master分支上的代码,合并到v2分支上
先把需要操作的两个分支代码拉取到本地保持最新代码,切换到需要合并的分支v2,在v2分支上使用小乌龟选择【合并】,选择 从分支 master 再点确定即可将master上的代码合并到v2。
- 如果没有冲突,要将本地v2推送到远程v2,小乌龟选择【推送】即可。
- 如果有冲突,先解决冲突,解决完成后,如果要推送到远程v2,使用小乌龟进行提交到v2分支即可(这次提交是合并冲突的提交)