魏老师教我用git

早期:故事:
写个代码为了某些需求要一些操作,比如复制粘贴用于备份。属于手工管理代码版本时代,随着时间推移,手工版本成本太高。毕业论文最后一班,真最后一班,真真最后一班。有时候还需要用到昨天的版本。由此,需要制作一种工具、流程对版本进行控制和切换。早期属于集中式控制,SVN。中央库。搜有人对中央服务器进行提交。弊端:速度慢,我们可能需要大量时间浪费在代码提交,代码迁出。所以就有了分布式版本控制,git。作者:维纳斯。是unix keno 的开发人员,业界审计任务。当他需要续费的时候,他决定自己开发!开启了分布式版本控制时代!keno编程了git。keno开发人员特别多。svn区别:有本地库远程库,本地库是对远程库的拷贝。在svn中的提交和推送 打断
svn中情况,歇一天代码,下班之前推送本,时间关系。
git中可以随时提交,
svn是思想:万物皆字节。二进制流的差异比较,弊端:zip。相同的内容多次打包那么二进制流差异巨大。当我把类库更新的时候,差异很大。
git:以行作为保存单位。以文本的方式,(当然也可以通过配置来进行紫定华,文本按行,图片按相似点,)通过文件去比较。当文件发声冲突的时候,当我们利郎个人同事修改一个文件的时候哦,遇到冲突。差异并不仅仅体现在不同的部分。git以行的单元进行保存,则更加智能的对差异进行识别。优势:不仅仅在于分布式,并且对于差异化有着更好的处理。
git概念难点
代码,本地库,远程库。
本地库是对远程源的拷贝。远程源可以有多个,默认情况有一个。

主干开发,分支开发。
分支概念:学习曲线略高。一般使用主干开发,分支的创建,树形结构,分支创建的起点和终点应该在一个链上。
分支两点之间一条线,就怕环形结构。a——》b————》c
从哪来一定要回到哪里去。 我们的期望值是树形结构。

git开发分支开发:在此一定要说gitflow
gitflow工作流:是一个对git的扩展,不是自带的,他将复杂抽象的git概念更加清晰。
(手动展示了一个本地源新项目,完成初始化。)
简化为三件事情:

  • 新功能
  • 新版本
  • 修复线上bug
    约定大于配置,我们约定分成这三种事情。
    主分支:master。第一次提交的默认目标分支。
    当gitflow初始化之后,又了master和devlop分支。
    master永远是最新最完整的线上版本。
    devlop永远是最新最完整的本地版本,可执行!
    开启
    吕寰打扰我一会儿。。。。
    feature是最简单的,
    hotfix 热修复
    release发布版本
    两个分支
    写下作者名。
    写下当前日期。
    不同分支下不同人写的东西互不影响。
    审查分支,可以就结束分支。和到devlop
    审查第二个分支,可以结束。河道devlop;
    冲突,
    <<<<<<<<<<<
    魏涛
    ==========
    2017-01-11
    >>>>>>>>>>

不建议修改commit文本中的信息。
feature从devlop而来,回devlop而去。
发版本:1.0
提交之后,完成当前版本。(刚才是完成当前分支。)
release最终回到的位置是,先回到master,再回到devlop,然后在master上打一个tag,名字就是分支名字。
hotfix:1.0.1,一定是开始于master、

工作流:
github有自己的工作流
开源软件如何
fork : 拷贝名下
pull request:以一个分支的形式退给作者。
在gitflow里面,没有明确代码审核的环节。
github自带的有审核环节。

抓取
拉取
推送

commit
pull
push
fetch
stash

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容