GIT速成
安装工具与使用工具:
GIT工具 :https://www.git-scm.com/download/
WINGDOWS图形界面工具:https://download.tortoisegit.org/
GIT远端仓库服务器:https://gogs.io/
完全的新手该如何理解
GIT的好处,简而言之,就像PHOTOSHOP里的历史功能,或者更简单的WORD文本编辑中CTRL+Z撤销功能一样,让每一步操作都有一个确定的历史版本。除此之外,我们还能有多个分支做出多个历史版本,每一次的修改都能有据可查。
与SVN比较的话,最大的差别是去中心化,无需中心服务器,同时还能修改版本记录,快速切换分支等特点。
基本概念
GIT分为远端仓库和本地仓库。
- 远端仓库就是大家共享和共同维护记录的仓库。
- 本地仓库就是自己个人维护的仓库。本地开的分支可以不用推送到远端仓库。只有MASTER主线(需要推送远端的分支)需要谨慎对待,主要影响美观。
常规的开发流程:
- Clone ,将远端仓库克隆到本地磁盘。
- Push,将本地仓库推送到远端仓库
- Pull,将远端仓库取下并于本地进行合并。如果有不同会产生分支。
习惯于SVN的用户如何转变(针对远端仓库)
SVN操作 | GIT操作 |
---|---|
UPDATE | 在本地没有提交过的情况下,直接Pull。否则使用Fetch,随后Rebase。 |
COMMIT | 提交之前先进行上一步类似SVN UPDATE的操作。再Pull到远端仓库,才算真正的完成提交。 |
入门使用方法
GIT的使用方法特别自由,所以初识GIT,人们总是希望能够快速掌握,减少在试错上浪费的时间。GIT的强大,任何奇怪的操作都不会产生严重的后果(精通会自然发现历史都是能被修改的)。除非删库跑人。
作为强迫症,我建议还是记住以下几点,这样才能保证MASTER看上去特别漂亮美观。
- 开分支做功能,万一插点别的事儿。你是该提交还是不提交呢?最后GIT的分支信息可以不用推送到远端仓库,所以开分支挺省事。
- 同一功能连续开发尽可能压缩成一次提交。
- 合作的团队仓库,每次推送远端前,首先Fetch操作,然后是Rebase,如果有冲突,那就硬刚,解决。以此保证分支美观。
关于进阶直接看这里
https://github.com/lhmouse/git-workflow-zh/blob/master/workflow.md
GIT速成的更多相关文章
- 从0开始学习 GITHUB 系列之「GIT 速成」【转】
本文转载自:http://stormzhang.com/github/2016/05/30/learn-github-from-zero3/ 版权声明:本文为 stormzhang 原创文章,可以随意 ...
- Git速成学习第六课:Bug分支
Git速成学习笔记整理于廖雪峰老师的官网网站:https://www.liaoxuefeng.com/ 当你接到一个修复代码为101的任务的时候,很自然的你想创建一个分支issue-101来修复它,但 ...
- Git速成学习第五课:分支管理策略
Git速成学习笔记整理于廖雪峰老师的官网网站:https://www.liaoxuefeng.com/ 通常合并分支时,如果可能用Fast forward模式,但是在这种模式下,删除分支后,会丢掉分支 ...
- Git速成学习第四课:解决冲突
Git速成学习笔记整理于廖雪峰老师的官网网站:https://www.liaoxuefeng.com/ 我们继续练习,准备新的feature1分支. $ git checkout -b feature ...
- Git速成学习第三课:创建与合并分支
本来第三课想记录一下远程仓库的创建与克隆0.0但是想了想还是不写了. 这里写一下分支管理中的创建与合并. Git速成学习笔记整理于廖雪峰老师的官网网站:https://www.liaoxuefeng. ...
- Git速成学习第二课:管理修改与删除文件
Git速成学习笔记整理于廖雪峰老师的官网网站:https://www.liaoxuefeng.com/ 管理修改 首先我们需要明确,为什么说Git管理的是修改而不是文件呢? 我们首先对于已有的read ...
- Git速成学习第一课:创建版本库与版本回退
Git速成学习笔记整理于廖雪峰老师的官网网站:https://www.liaoxuefeng.com/ 我太困了0.0精神点再写...... /*我来啦!以后会陆续更新自己的学习笔记*/ Git是分布 ...
- 从0开始学习 GitHub 系列之「03.Git 速成」
前面的 GitHub 系列文章介绍过,GitHub 是基于 Git 的,所以也就意味着 Git 是基础,如果你不会 Git ,那么接下来你完全继续不下去,所以今天的教程就来说说 Git ,当然关于 G ...
- GitHub 系列之「Git速成」
1.什么是Git? Git 是 Linux 发明者 Linus 开发的一款新时代的版本控制系统,那什么是版本控制系统呢?怎么理解?网上一大堆详细的介绍,但是大多枯燥乏味,对于新手也很难理解,这里我只举 ...
随机推荐
- h5 端图片上传
1.upload.js (function($) { $.extend($.fn, { images : new Array(), initImages:function (images) { $.e ...
- Java的注解相关的命令
与注解处理器的有关的命令有5个,分别如下: (1)-XprintProcessorInfo 输出有关请求处理程序处理哪些注释的信息 (2)-XprintRounds 输出有关注释处理循环的信息 (3) ...
- 数据库 -- Oracle常用命令
1.查询账号状态 SELECT USERNAME, ACCOUNT_STATUS FROM DBA_USERS; 解锁账号 ALTER USER scott ACCOUNT UNLOCK 2.创建表空 ...
- 面向UI编程框架:ui.js框架思路详细设计
由于上一次的灵光一闪,萌生了对面向UI编程的思想实现.经过一段时间的考虑和设计,现在将思想和具体细节记录下来: 具体思路描述: 在UI.config文件中,配置所有参数,比如页面模板.所有组件.组件控 ...
- 在Struts2标签s:textfield中显示正确的日期
Java代码 struts2中的日期期输入显示问题 struts2 中的默认的日期输出并不符合我们的中文日常习惯.以下是我知道的在struts2中进行日期格式化输出的几种方式. 1.利用 &l ...
- vim---打造Python IDE
1.文法高亮 为了能在Vim中支持Python文法需要用到插件python.vim,该插件默认位于(/usr/share/vim/vim72/)<Vim安装目录>/<$VIMRUNT ...
- IOS bug之cannot be opened because the project file cannot be parsed
刚才用Cornerstone更新代码后,再次打开项目时,不能打开,提示cannot be opened because the project file cannot be parsed后来在网上查了 ...
- SpringBoot源码分析之SpringBoot的启动过程
SpringBoot源码分析之SpringBoot的启动过程 发表于 2017-04-30 | 分类于 springboot | 0 Comments | 阅读次数 SpringB ...
- Vue双向绑定的关键:Object.defineProperty()
这个方法了不起啊.vue.js和avalon.js 都是通过它实现双向绑定的.而且Object.observe也被草案发起人撤回了.所以defineProperty更有必要了解一下了. 先上几行代码看 ...
- springboots Helloworld
1.eclipse gradle 插件 HELP----MarketPlace----搜索 buildship点击安装 WINDOW----preferences--gradle 配置安装好的grad ...