话接上回,不知道可以看Gitee保姆级教学-CSDN博客这篇博客
1.IDEA关联Git
1.1关联Git
File > Settings() 关联过程是自动的
此处关联是Idea可以自动
完成的
1.2创建项目&仓库
-
新建项目后,将项目目录创建为git仓库
-
注意: 要在建仓库前,设置忽略文件 ".gitignore"
作用:被忽略的文件会被版本记录忽略,版本中不包含它们。
范围:不需要和其他开发共享的文件,具体见下图。
# 所有class,后缀的文件
*.class
# 所有jar后缀的文件
*.jar
*.iml
*.war
# .idea文件夹
.idea
# out文件夹
out
target
创建仓库前,先添加忽略文件
将项目目录初始化为一个仓库
1.3提交-commit
创建好仓库后,做第一次提交。
选择提交菜单
选择提交文件,定义提交信息
之后会有些友好提示,可以忽略,点击“commit”
即可
1.4创建分支-branch
新建开发分支
新建分支
查看当前分支
在其他分支修改并push到远程
1.5上传到到远程仓库(push)
-
请首先参照第8章(详情见文章开头),创建一个远程仓库。
-
要求是裸库,且建议库名和项目名同名。
选择push
菜单
定义远程仓库地址
执行,push操作
1.6克隆到本地仓库(clone)
如果有建好的远程仓库,比如公司内已经在用的仓库,或者github,码云上的一些公开仓库,
可以将远程仓库的项目复制到本地使用
点击克隆菜单
输入如远程仓库地址
打开项目
打开项目,选项
1.7更新本地项目
如果远程仓库有更新,则你的本地项目也需要一起更新。
选择pull菜单
执行 pull操作
更新日志显示
1.8冲突解决
合并分支时,如果出现冲突,则需要解决冲突。
冲突出现,弹窗中可以选择如下
也可以直接修改冲突文件,然后commit即可
1.9撤销修改
1.9.1未commit时
还没有add文件时,可以直接删除要删除或修改的文件,因为此时还没有经过仓库管理
如果已经add,但是还没有commit,此时只是在暂存区
1.9.2commit时
如果已经提交,先显示历史记录
选中要退回到的提交点,右键拷贝版本id
然后关闭窗口,重新操作git--> reset HEAD
ps: reset type 与版本回退章节中命令意思一致,看到这了,点个赞吧
1.10stash
用于将当前分支未提交的修改(工作区的修改和暂存区的修改)先暂时缓存起来。
适用于正在一个分支进行开发,但是需要切换到另一个分支进行bug处理,但是又不想提交当前分支代码的情况。
比如在B分支进行了修改,现在需要切换到A分支。
1)在B分支上执行stash,B分支的代码会恢复到修改前状态
2)切换到A分支,修改代码并提交
3)切回到B分支,恢复之前的代码,继续开发
2.多人协同开发
2.1项目管理员( 项目经理 )
1> 由管理员负责创建一个远程库,初始的库中什么也没有,为裸库。库的名称建议和项目同名
2> 管理员会在idea中创建一个初始项目,其中包含.gitignore文件。在项目根目录下 建立本地库。并建立 dev分支。
3> 管理员将本地库上传到远程库
4> 将其他开发人员拉入远程库的 [开发成员列表中]() ,使得其他开发人员可以访问该远程库。
流程如下:
点击添加成员
被邀请成员接受
查看已添加的开发成员
5> master分支设置为 protected分支(),只有管理员有权限将代码合并到其中。dev分支设置为 [常规分支]所有开发人员 都可以在其中合并代码
进入分支设置
设置保护分支,让master分支不能被随更改
2.2开发人员
-
1初始化:在idea中clone 远程库,获得项目。会建立本地库
-
2后续的开发中,都要在dev分支上进行。开发完一个功能并测试通过后就commit 提交到本地的dev分支中,然后 上传(push)到远程dev分支中。
-
3需要更新项目内容时,通过 pull 从远程仓库拉取内容。
-
4注意:多人协同时,每次在 push 到远程库前,都先做一次pull,一来是把远程最新内容合并到本地,二来是核实本地内容是否和远程内容有冲突。
-
5后续的开发,会接到一个个的功能任务,往复操作 2>、3>、4> 而已。
3经典BUG问题
3.1 密码问题
在使用https协议做push时,如果曾经使用过码云,但密码有过改动,此时会报错
解决方案: 控制面板 》 凭据管理器 》 删除对应凭证,再次使用时会提示重新输入密码。
删除之前的码云凭证,然后重新push即可
3.2推送时邮箱问题
推送时报错,提示private email address
解决方案,gitee设置邮箱为公开的
随缘更新。。。。
下课