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 开发的一款新时代的版本控制系统,那什么是版本控制系统呢?怎么理解?网上一大堆详细的介绍,但是大多枯燥乏味,对于新手也很难理解,这里我只举 ...
随机推荐
- Monkey捕获Crash原理
Android的RuntimeInit.commonInit中会设置UncaughtHandler ActivityManagerService(AMS)在执行handleApplicationCra ...
- Android 手势识别—缩放
上一篇讲解了手势识别中的点击和双击事件的识别,用到的是GestureDetector类和GestureDetectorCompat类,用于监听用户触摸屏幕中的简单动作. 缩放 基本用法如下,可以通过缩 ...
- Vue.js系列之四计算属性和观察者
一.计算属性 1.模版内的表达式非常便利,但是设计它们的初衷是用于简单计算的.在模版中放入太多的逻辑运算会让模版过重且难以维护,例如如下代码: <div id="example&quo ...
- django项目的生产环境部署,利用nginx+uwsgi
1.坏境准备 centos6.5 django项目 python坏境(python3.6,) 所需的各种模块(django,uwsgi,sqlite3)具体看坏境 我的测试django项目的数据库用的 ...
- linux-统计文本中符合条件的内容
1, 单个条件匹配, cat results.log | grep 'status=402' 2, 多个条件匹配 1), 2个条件都要满足 cat results.log | grep "s ...
- springboot-6-整合jdbc
如果有整合jpa了, 那么在dao中直接, 不需要引入依赖 @Resource private JdbcTempalte jdbcTempalte; 如果没有的话, 就先在pom.xml中加入依赖 & ...
- springboot-4-整合fastjson
使用fastjson作为springboot的默认json解析, 原来使用的是jackson 1, 引入依赖 <dependencies> <dependency> <g ...
- free函数使用时的注意事项。
free函数是我们在写C语言程序时常用的函数,但是使用时需要注意,一不小心很肯能会引起吐核. 注意:free函数与malloc()函数配对使用,malloc函数释放申请的动态内存.对于free(p)这 ...
- jvm间歇性崩溃分析
http://www.cnblogs.com/LBSer/p/4417148.html 1 问题描述 某服务有两台机器,每隔几天会报警load高,一开始看监控发现gc时间抖动很大,以为是发生了full ...
- sql典例分析
1. 条件过滤 & Having 表结构 #tab_a #tab_b 表关系 tab_a.id = tab_b.relation_id 表数据 需求 查新把tab_a的ID对应的表tab_b的 ...