Git 概述
Git是一个免费的开源的分布式版本控制系统,可以快速高效的处理从大型到小型的各种项目
git 主要分为两大部分 客户端 服务器端
- 客户端分为 工作区(
workspace) 暂存区(index) 本地仓库(repository) - 服务器端为 远程仓库(
remote)
git 常用命令
- 查看分支:git branch -v
- 创建本地分支:git branch lizhihui
- 删除本地分支:git branch -d lizhihui
- 切换分支:git checkout lizhihui
- 合并分支: git merge master
- 删除远程分支 git push origin --delete dev
- 创建并进入分支 git checkout -b jkl
mkdir mytest #make directory 创建目录
cd mytest #change directory 切换目录
cd .. #回到上一目录
git init #初始化git,生成文件夹.git(隐藏文件夹),类似npm init初始化项目
touch README.md #创建文件
git add README.md #提交暂存区 git add 文件名 或者 git add .
git commit -m "first commit" #提交本地仓库
git remote add origin https://gitee.com/huitailang2021/mytest.git #指定origin的地址
git push -u origin "master" #提交远程仓库
git 分支操作
1. 什么是分支?
在版本控制的过程中,同时进行多个任务,为每个任务设置一个单独分支,就算该分支任务失败了,也不会影响到主分支任务,直接删掉就可以。
优点:
- 同时进行多个功能的开发,提高开发效率
- 各个分钟独立进行。如果一个分支开发失败,不会对其他分支有任何影响,直接删除就可以
分支的操作
- 查看分支
git branch -v - 增加分支
git branch 分支名 - 切换分支
git checkout 分支名 - 增加并切换到该分支
git checkout -b 分支名 - 合并分支
git merge 分支名
合并分支(冲突问题) 或者 执行git pull,产生冲突
原因:在合并分支的情况下,俩个分支在同一个文件的同一个位置有俩套完全不同的修改.Git无法代替我们决定哪一个,所以必须人为决定新代码的内容
如果只是一个人进行修改(hot-fix),而master并没有修改,那么此时不会出现合并冲突。
- 或者在
git pull的时候 想要修改文件的内容 刚好另一个人也是修改的这个文件 这个时候如果在提交的话会出现冲突的问题
- 修改完后,仍然需要将hello.txt放到暂存区,并且需要提交本地库,而且这次提交本地库git commit(命令时不能带文件名)