zoukankan      html  css  js  c++  java
  • 对于Git的总结

    1.1:vcs
         Git是一款代码管理工具(Version Control System),傲视群雄,是目前世界上最先进的免费开源的分布式版本控制系统,没有之一!
    1.本地版本控制
    通过保存并管理文件补丁的方式,来记录对应文件修订前后的内容变化。目前最为流行的一种本地版本控制系统是rcs,所以,根据每次修订后的补丁,rcs可以通过不断打补丁,计算出各个版本的文件内容。当然这样做之后,对于本机被管理文件可以做到版本回滚或者回退,但是对于处在不同系统上的开发者要进行协同工作,就遇到了问题。于是也就有了“集中式版本控制工具”。
     
    2.  集中式版本控制
    集中式版本控制系统(Centralized Version Control Systems,简称 CVCS),版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器   
    这么做最显而易见的缺点是中央服务器的单点故障。如果维修一小时,那么在这一小时内,谁都无法提交更新,也就无法协同工作。如果中心数据库所在的磁盘发生损坏,又没有做恰当备份,毫无疑问你将丢失所有数据——包括项目的整个变更历史,只剩下人们在各自机器上保留的单独快照。
    3.  分布式版本控制
    客户端并不是提取最新版本的文件快照,而是把原始的代码仓库完整地镜像下来,分布式,当我们连接共享版本库时,可以先将服务器上的项目,克隆到本地,相当于每一台电脑上都有整个项目的文件备份,在没有网时也可以开发,完成开发后,可以先提交到本地仓库,当有网的时候,再提交到共享版本库,这样一来,如果我们的服务器或者我们自己的电脑出故障,我们也没有任何担心的。
    diff的介绍
    diff 命令比较文本文件。它能比较单个文件或者目录内容。
    Git和Github的关系
    1. Git是一个分布式的版本控制系统;
    2.GitHub是一个基于Git的项目托管平台,它提供了web界面,我们可以在上面创建资源仓库来存放你的项目;
    3.在本地或服务器创建一个资源仓库通过shell命令或图形用户界面可以和远端的GitHub进行项目同步更新,实现对项目的管理。
    查询
    clipboard.png
     
    clipboard.png
    删除用户和邮箱
    clipboard.png
     
    clipboard.png
     
    clipboard.png
     
    clipboard.png
     
    clipboard.png
    会发现以上执行的删除用户和密码的语句,在下方在次执行的时候用户密码删除
    二:与远程仓库关联
    2.1:在本地生成ssh key
     
     运行命令  ssh-keygen -t rsa -C "1227303479@qq.com"
     
    2:2:在github 的setting中选择SSH Keys 添加key
     
    2.3:在GitHub中创建一个远程仓库
     
    2.4:复制远程仓库的地址
     
    2.5:本地clone远程仓库
     
    clipboard.png
    clipboard.png
     
    clipboard.png
     
    clipboard.png
     
    clipboard.png
    2.6:本地修改代码之后提交到远程仓库
     
    First是我们本地仓库取的名字,可以自定义!
     
    之后输入自己的用户名和密码! 即可以上传成功!
     
    可以使用命令git remote rm first删除关联的远程仓库
    使用git remote show first 来查看first远程仓库的具体分支
    使用git remote –v 来查看与当前本地仓库相关联的远程仓库
     
    2.7:在GitHub上查看差异文件
    1.修改本地仓库的文件并上传
     
    1.  上传成功后,在GitHub上查询差异
     
    三:分支管理
    3.1:分支的引入
    Master 是主分支,主要作为程序的发布,可以理解为是项目的最终版本!
    所以不能在master上进行开发,所以应该建立子分支进行开发!
     
    团队中多个人开发一下项目,一同事在开发一个新的功能,需要一周时间完成,他写了其中的50%还没有写完,如果他提 交了这个版本,那么团队中的其它人就不能继续开发了。但是等到他全部写完再全部提交,又存在每天进度丢失的风险,这如何是好呢? 
    对于上面的这个问题,我们就可以用分支管理的办法来解决,一同事开发新功能他可以创建一个属于他自己的分支,其它同事暂时看不到,继续在开发分支(一般都 有多个分支)上干活,他在自己的分支上干活,等他全部开发完成,再一次性的合并到主分支上,这样我们既可知道他的开发进度,又不影响大家干活!
    其他的版本控制器也有分支的概念,只不过切换,删除分支的时候非常慢,效率低下,而git切换或者删除分支几乎就是一瞬间的事!
    clipboard.png
    clipboard.png
    查询所有分支
    clipboard.png
    创建分支
    clipboard.png
    分支合并
    条件一
    clipboard.png
    条件二
    clipboard.png
    clipboard.png
    合并
    clipboard.png
    clipboard.png
     IDEA中打开github
    2.设置github当中的链接
    3.修改这个文件之中的内容

  • 相关阅读:
    破解Excel写密码保护方法
    【收藏推荐】JavaScript 秘密花园
    Flask框架第六篇.Flask中的蓝图和特殊装饰器
    Flask框架第四篇.Flask 中的 请求Request和session
    Flask框架第三篇.Flask 中的 Response
    Flask框架第八篇.请求上下文
    Flask框架第一篇.Flask框架基础
    Flask框架第二篇.Flask中的配置
    Flask框架第五篇.Flask 中的路由
    Flask框架第七篇.CBV和Flasksession
  • 原文地址:https://www.cnblogs.com/s122/p/9445423.html
Copyright © 2011-2022 走看看