文章目录
- 1. git基本概念
- 1.1版本控制
- 1.1.1 版本控制软件
- 2. 命令的使用
- 2.1 Linux命令
- 2.2 git基础指令
- 2.2.1 设置用户
- 2.2.2 初始化本地仓库
- 2.2.3 查看本地仓库状态
- 2.2.4 添加暂存区域
- 2.2.5 提交本地库
- 2.2.6 切换版本
- 2.3 分支操作
- 2.3.1 分支基本操作
- 2.3.2 合并操作
- 2.3.4 分支开发规范
- 3. 远程仓库
- 3.1 创建远程仓库
- 3.2 配置SSH公钥
- 3.2.1 产生公钥
- 3.2.2 查看公钥
- 3.2.3 复制公钥到远程仓库
- 3.2.4 验证公钥
- 3.3 推送到远程仓库
- 3.3.1 添加远程仓库
- 3.3.2 查看远程仓库
- 3.3.3 推送远程仓库
- 3.3.4 建立关联
- 3.4 远程仓库分支操作
- 3.4.1 推送远程仓库分支
- 3.4.2 克隆远程仓库
- 3.4.3 拉取远程仓库
- 3.4.4 远程仓库分支冲突
- 4. IDEA中使用git
- 4.1 在IDEA中配置git
1. git基本概念
1.1版本控制
1.1.1 版本控制软件
版本控制软件分为两种,一种是集中式,另一种是分布式。目前版本控制的主流是git
集中式版本控制软件
- 软件:SVN/VSS/CVS
- 优点:管唇人可以轻松掌握每个开发者的权限。
- 缺点:当中央服务器发生故障了,开发者就无法提交更新,无法进行协同工作。
分布式版本控制软件
- 软件:Git/Bazaar/Darcs
- 优点:断网照样可以开发,因为每一个开发者都是完整地项目拷贝
2. 命令的使用
2.1 Linux命令
-
touch 文件名
:创建空白文件 -
rm 文件名
:删除文件 -
可以按
Tab
键自动补全代码 -
vim 文件名
:进入操作界面 -
-
i
插入操作 esc
- 接
:q
:无修改保存 - 接
:wq
:保持有并退出 - 接
q!
:不保存并退出
- 接
-
-
cat文件名
:查看文件 -
查看文件列表
ll-a
(查看全部文件列表)
2.2 git基础指令
2.2.1 设置用户
git config --global user.name 用户名
git config --global user.email 邮箱
签名的作用是区分不同操作者身份。用户的签名信息在每一个版本的提交信息中能够看到,以此确认本次提交是谁做的。Git 首次安装必须设置一下用户签名,否则无法提交代码。
**※注意:**这里设置用户签名和将来登录 GitHub(或其他代码托管中心)的账号没有任何关系。
查看配置项
2.2.2 初始化本地仓库
git init
2.2.3 查看本地仓库状态
git status
2.2.4 添加暂存区域
git add 文件名
可以使用git add.
表示该文件夹所在的文件全部放到暂存区域
把文件移除暂存区:
git rm --cache 文件名
2.2.5 提交本地库
git commit -m "日志信息" 文件名
查看日志信息:
-
查看历史日志
git reflog
-
查看当前日志
git log
2.2.6 切换版本
git reset --hard 版本号
版本号是
commit
后面的那一串字符串
2.3 分支操作
2.3.1 分支基本操作
创建分支
git branch 分支名
查看分支
git branch -v
切换分支
git checkout 分支名#切换并创建分支名
git checkout -b 分支名
删除分支
删除时检查:(检查新开发代码是否合并)
git branch -d 分支名
强制删除不做检查:
git branch -D 分支名
**※注意:**删除的时候要到别的分支,再去进行删除操作。
2.3.2 合并操作
正常合并分支
git merge 分支名
冲突合并分支
对同一个文件内容都进行修改了,需要手动修改内容。
2.3.4 分支开发规范
master(主分支)
- 用于部署生产环境的分支,确保master分支稳定性。
- 般由develop以及hotfix分支合并,任何时间都不能直接修改代码。
hotfix(修复分支)
- 线上出现紧急问题时,需要及时修复,以master分支为基线,创建hotfix分支,修复完成后,需需要合并到master分支和develop分支。
- 命名规则:
hotfix/user
develop(开发分支)
- 始终保持最新完成以及bug修复后的代码。
- feature分支都是基于develop分支下创建的。
feature(功能分支)
- 开发新功能时,以develop为基础创建feature分支。
- 命名规则:
feature/user_module
release(预上线或发布分支)
- 当有一组feature开发完成,首先会合并到develop分支进入测试发布时,会创建release分支。
- 测试时如果发现BUG,由develop修改BUG后,重新合并。
- 当测试完成通过之后,合并master分支。
3. 远程仓库
3.1 创建远程仓库
3.2 配置SSH公钥
3.2.1 产生公钥
ssh-keygen -t rsa
3.2.2 查看公钥
cat ~/.ssh/id_rsa.pub
3.2.3 复制公钥到远程仓库
3.2.4 验证公钥
ssh -T git@gitee.com
3.3 推送到远程仓库
3.3.1 添加远程仓库
git remote add origin 仓库地址
3.3.2 查看远程仓库
git remote
3.3.3 推送远程仓库
git push origin master:分支名称
git push origin master:master可以省略最后面的
master:
git push origin master
3.3.4 建立关联
git push --set-upstream origin mastergit branch -vv (查看关联)git push (建立好关系后,直接可以推送)
3.4 远程仓库分支操作
3.4.1 推送远程仓库分支
在gitee中创建分支
git相关操作
3.4.2 克隆远程仓库
git clone 仓库路径 本地目录
3.4.3 拉取远程仓库
抓取与合并
- 抓取命令就是讲仓库里的更新的内容都抓取到本地,但是不会进行合并
- 如果不能指定
远端名称
和分支名
,就会抓取所有的分支
git fetch origin master
拉取命令
- 拉取命令就是将远端仓库的修改拉到了本地自动进行合并等同于
fetch+merge
- 如果不指定
远端名称
和分支名
,就会抓取所有的分支并更新
git pull orgin master
3.4.4 远程仓库分支冲突
如果发生了远程仓库分支冲突,需要pull
下来之后进行人工处理
4. IDEA中使用git
4.1 在IDEA中配置git
.gitignore
文件说明
之后创建git仓库