git常用命令及git分支
git常用命令
设置用户签名
bash
//设置用户签名
git config --global user.name <用户名>
git config --global user.email <邮箱>
初始化本地库
bash
//初始化本地库 文件目录是:/g/git-space/git-demo
git init
查看本地库状态
bash
//查看本地库状态
git status
这里在工作区创建了一个xx.txt的文件,查看状态时文件名变红,说明文件未添加到暂存区
将文件添加到暂存区
bash
//将文件添加到暂存区
git add <file>
从暂存区删除文件(但是工作区不会删除):
bash
git rm --cached <files>
提交到本地库
bash
//提交到本地库
git commit -m "日志信息" <files>
查看历史记录
bash
//查看历史记录
1.git reflog
2.git log
版本穿梭
git reset --hard <版本号(精简)>
git分支
什么是分支
在版本控制过程中,同时推进多个任务,为每个任务,我们就可以创建每个任务的单独分支。使用分支意味着程序员可以把自己的工作从开发主线上分离开来,开发自己分支的时候,不会影响主线分支的运行。对于初学者而言,分支可以简单理解为副本,一个分支就是一个单独的副本。(分支底层其实也是指针的引用)
分支的好处
同时并行推进多个功能开发,提高开发效率。
各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任何影响。失败的分支删除重新开始即可。
分支的操作
查看分支
git branch -v
创建分支
git branch 分支名
切换分支
git checkout 分支名
在hot-fix分支上修改文件并且提交
删除分支
bash
git checkout -b 分支名 //切换并创建分支
git branch -d 分支名 //删除分支,需要做检查
git branch -D 分支名 //删除分支,不需要做检查
合并分支
将hot-fix合并到master
首先回到master分支
执行命令
git merge hot-fix
合并冲突
冲突产生的原因:合并分支时,两个分支在同一个文件的同一个位置有两套完全不同的修改。Git无法替我们决定使用哪一个。必须人为决定新代码内容。
修改master中的xx.txt,然后提交
切换分支hot-fix
在分支hot-fix上修改xx.txt,然后回到master
此时合并hot-fix会产生冲突
打开xx.txt
手动修改包括符号在内的多余内容
重新添加到暂存区
重新提交(注意此时提交不要加文件名)
查看结果
注意在hot-fix分支上还是原来的内容并未修改