- [Git 大全](https://gitee.com/all-about-git)
- 团队项目Git分支管理规范
- 导出 git 提交记录到桌面
- 创建了一个分支并在分支上开发
- 小张获取小袁提交的分支
- 小张把分支合并到主干
- 关于Git版本切换出现问题
- 版本控制
- Git跟SVN的区别
- Git历史
- Git下载、卸载、安装、环境配置
- 启动Git
- 基本的Linuxi命令学习
- 查看git的不同级别配置文件
- 设置用户名与邮箱
- git基本理论
- gt的工作流程
- git项目搭建
- Git的文件操作
- 查看文件状态
- git设置忽略文件
- 设置免密登录(码云)
- IDEA集成Git
- git分支相关命令
待看视屏网址1
待看视屏网址2
待看视屏网址3
待看视屏网址4
待看视屏网址5
待看视屏网址6
待看视屏网址7
待看视屏网址8
IDEA中Git的使用详解
完整教程-idea使用git进行项目管理(总结版)
团队项目Git分支管理规范分支管理
创建项目时(一般是服务型项目,工具型或辅助型项目可以简单一些),会针对不同环境创建三个常设分支:
- develop:开发环境的稳定分支,公共开发环境基于该分支构建。
- pre-release:测试环境的稳定分支,测试环境基于该分支构建。
- master:生产环境的稳定分支,生产环境基于该分支构建。仅用来发布新版本,除了从pre-release或生产环境Bug修复分支进行merge,不接受任何其它修改
平时开发工作中,会根据需要由开发人员创建两类临时分支:
- 功能(feature)分支:为了开发某个特定功能,从develop分支上面分出来的。开发完成后,要merge到develop分支。功能分支的命名,可以采用feature-*的形式命名(*为任务单号)
- Bug修复(fixbug)分支:为了修复某个bug,从常设分支上面分出来的。修复完成后,再merge到对应的分支。Bug修复分支的命名,可以采用fixbug-*的形式命名(*为bug单号)
流程规范
- 从develop分支切出一个新分支,根据是功能还是bug,命名为feature-* 或 fixbug-*。
- 开发者完成开发,提交分支到远程仓库。
- 开发者发起merge请求(可在gitlab页面“New merge request”),将新分支请求merge到develop分支,并提醒code reviewer进行review
- code reviewer对代码review之后,若无问题,则接受merge请求,新分支merge到develop分支,同时可删除新建分支;若有问题,则不能进行merge,可close该请求,同时通知开发者在新分支上进行相应调整。调整完后提交代码重复review流程。
- 转测时,直接从当前develop分支merge到pre-release分支,重新构建测试环境完成转测。
- 测试完成后,从pre-release分支merge到master分支,基于master分支构7建生产环境完成上线。并对master分支打tag,tag名可为v1.0.0_2019032115(即版本号_上线时间)
在项目根目录下执行命令 也就是在这个目录下执行命令:
导出全部时间段,全部人的提交记录:
git log --date=iso --pretty=format:’"%h","%an","%ad","%s"’ >> ~/Desktop/commit.csv
上面亲测可用,缺陷是导出了所有人,所有时间的记录。将进行如下优化
如果想导出某些提交者的提交记录,可以用 grep过滤,比如我想导出「lxd」这个人在项目中的提交记录:
导出指定时间段、指定人的提交记录(导出个人:推荐使用)
后缀 .log或者 .csv你随意
git log --pretty=format:"%ai , %an: %s" --since="126 day ago" | grep "lxd" >> ~/Desktop/commit-ianly.log git log --pretty=format:"%ai , %an: %s" --since="126 day ago" | grep "lxd" >> ~/Desktop/commit-ianly.csv
导出指定时间段内的数据:
git log --pretty=format:"%ai , %an: %s" --since="100 day ago" >> ~/Desktop/commit.log创建了一个分支并在分支上开发
建分支也是一个常用的操作,例如临时修改bug、开发不确定是否加入的功能等,都可以创建一个分支,再等待合适的时机合并到主干。
创建流程如下:
选择New Branch并输入一个分支的名称
创建完成后注意IDEA的右下角,如下图,Git: wangpangzi_branch表示已经自动切换到wangpangzi_branch分支,当前工作在这个分支上。
点击后弹出一个小窗口,在Local Branches中有其他可用的本地分支选项,点击后选择Checkout即可切换当前工作的分支(见场景7操作切换其他分支)。
如下图,点击Checkout
注意,这里创建的分支仅仅在本地仓库,如果想让组长小张获取到这个分支,还需要提交到远程仓库。
使用Pull功能打开更新窗口,点击Remote栏后面的刷新按钮,会在Branches to merge栏中刷新出新的分支。
这里并不想做合并,所以不要选中任何分支,直接点击Pull按钮完成操作。
更新后,再点击右下角,可以看到在Remote Branches区已经有了新的分支,点击后在弹出的子菜单中选择Checkout as new local branch,在本地仓库中创建该分支。完成后在Local Branches区也会出现该分支的选项,可以按上面的方法,点击后选择Checkout切换。
新功能开发完成,体验很好,项目组决定把该功能合并到主干上。
切换到master分支,选择Merge Changes
选择要合并的分支,点击Merge完成
现象1:Untracked Files Prevent Checkout
提示的很明确,在切换前请删除或提交
我的做法是,查看文件,先把这几个文件所在的目录备份一份,(当然也可以只备份这几个文件),接着我把这几个文件删掉,现在是让切换了,但是我原分支启动报错,我在把之前的备份粘进来,ok启动不报错了。
网上说删除的,我不建议直接删除,只要涉及删除我都建议先备份,给自己留个后路。
也有这样解决的,我没有亲测不知道好用不
现象2:Git Checkout Problem
下面这个处理很简单,如果你不想提交,你把内容先备份一下,然后使用服务器版本的内容(保证你没修改这个文件即可)。
https://www.pianshen.com/article/5505732564/
https://www.136.la/tech/show-866572.html
版本控制内容视屏网址
常见版本控制工具
版本控制分类
注意下载技巧:官网一般都特别慢,找镜像
官网
淘宝镜像
下载好了之后,如果你已经有了的话,普及一下如何卸载
找一下环境变量 path里有没有git相关的,有就清理掉
安装
基本上都是下一步,安装路径你可以换一下(随意),把你可能困惑的地方进行图解说明
下面都是直接走默认,实在不懂你用有道截图翻译一下,没啥好说的
环境变量我提一嘴
环境变量就是全局你在哪用都可以,为了方便而已,而且安装好了之后系统会自己配置好全局变量,不用专门配置环境变量,就算系统不配置都没关系,因为你鼠标右击就会出现bush here
你可以在任意位置右击,并且可通过ctrl+滚轮实现字体大小
通过命令看到的内容,就在本地配置文件里
# 查看配置 $ git config -l # 查看系统配置 $ git config --system --list # 查看本地配置 $ git config --global --list设置用户名与邮箱
如果已经设置过了邮箱跟用户名怎么重新设置
所有的配置文件,其实都保存在本地!,
删除邮箱用户名:(前面说配置的东西都能在配置文件里找到,那我用户名跟邮箱在哪个配置文件里呢)
在C盘用户下,如我的就在
你需要把内容清空并保存即可,你在通过命里查就没有信息了,你就可以重新设置了
通过下面两个命里设置即可,名字邮箱自己起,
git config --global user.name "liu918458630" git config --global user.emai "918458630@qq.com"
如果你出现如下报错:
管理员身份运行即可
完成以上内容git已经安装好了,可以正常使用了 ,重点在下面
git基本理论
*.class *.log *.lock # Package Files # *.jar *.war *.ear target/ # idea .idea/ *.iml *velocity.log* ### STS ### .apt_generated .factorypath .springBeans ### IntelliJ IDEA ### *.iml *.ipr *.iWS .idea设置免密登录(码云)
这一块是用的码云,对应视屏
找到你的.ssh文件夹下执行
这节视屏介绍了一种常用基本方式,没什么难的自己看看即可
git分支相关命令


