git实战

安装:https://git-scm.com/book/zh/v2/%E8%B5%B7%E6%AD%A5-%E5%AE%89%E8%A3%85-Git


# 表示当前文件中所有没被管理起来的文件(标红的)红变绿就是把没管理起来的文件管理起来了 git add .

回滚到指定版本:(去掉约饭功能)

回滚到回滚之前的版本:(恢复约饭功能)

git用来 管理文件 并生成相应 版本。
git三大区域:
工作区:正在操作的文件,红色表示已经修改的文件或新增的
暂存区:把修改的文件提交到暂存区 git add . (变成绿色的)
版本库:再提交到版本库 git comment -m "描述"
命令对文件在区域中的切换:



C1是第一版代码 C2保存的是修改和新增的文件 对于那些没有修改过的文件通过 指针 指向C1。
C4和C5都是在C3的基础上进行开发的,C4是正在开发新功能开发周期两个月,如果中间遇到bug了要修复,新建bug分支C5 修复完bug后合并到master上上线,
然后切换到dev分支继续开发新功能C6开发完后合并到master上 C7。
因为C5和C6的代码都是基于C3的,不一样有可能改到了同一个文件下的同位置内容,在合并到master的时候有可能会冲突(C5和C6可能修改了C3的同一行代码),哪里冲突手动修改就好了
合并冲突(同一行代码有编辑不一样的地方):

手动修复:


注意:
合并分支的时候先切换分支到你要合并的分支上(master)。
分支开发完合并成功后删除掉此分支。

终止合并:git merge --abort



github一个网站专门做代码仓库管理的(小公司 个人)
gitlab开源工具自己公司可以搭建一个托管代码的仓库(自己得有服务器 自己有管理员管理)(大公司)

origin:是别名可以任意起(代指的就是仓库地址) (别名只添加一次就够了)

# 本地什么都没有的 本地创建pytest目录和readme文件
echo "# pytest" >> README.md
git init git add README.md
# 提交版本后默认本地会创建一个master分支 git commit -m "first commit"
git branch -M main git remote add origin https://github.com/zhangzeng777/pytest.git git push -u origin main
# 本地已有代码的 提交过版本的
git remote add origin https://github.com/zhangzeng777/pytest.git git branch -M main git push -u origin main

本地有代码了 就不用git clone了,更新代码就行了用git pull




git pull origin 分支 操作 等同于 git fetch origin 分支 和 get merge origin/分支 这两个操作

场景:
第一种:多个记录合并成一个记录
注意:合并记录的时候 不要合并已经push到远程仓库的 记录

把v3和v4合并到v2(将最前面的字母改成s):

第二种:可以将分支的代码直接插入到主干上,不是合并到主干(开发记录上不会有分支了,就是一条线)

以图表形式展示合并的效果:

简洁版:

用rebase的效果:


第三种:就是在公司写代码忘了push,回家又写了点代码,再回公司写代码git pull的时候默认会合并 会产生分支分支

rebase 冲突解决:

安装软件,执行如下的git命令 让git和bcomp关联上(path 路径需要看软件的安装路径),在应用的时候是通过软件识别冲突在软件里改很方便










小弟切换到dev分支,再在dev分支基础上创建自己的分支斗地主ddz(开发完毕后要代码review)

合并到dev的时候代码必须通过review才能正常合并
pull request就是代码review





比如我想个这个框架提供我的代码:


git有三个配置文件:

三种形式免密登录:


忽略文件在github上有各种语言现成的可以直接下载下来用:



任务管理:(bug管理 问题管理....)


浙公网安备 33010602011771号