git零基础快速入门实战,重点讲解,在实际生产中整合idea对版本、分支的管理等
1.什么是版本管理
(多人协作)项目中常见的问题:
- 代码放在什么地方 ??
- 同步(到服务器),代码的冲突问题 ??
- 服务器访问权限问题 ??
- (代码)服务器内容修改的细节 ??
- 项目版本的发布 ??
版本控制是指对软件开发过程中各种程序代码、配置文件及说明文档等文件变更的管理,是软件配置管理的核心思想之一。
1.什么是git
Git(读音为/gɪt/。)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理,git是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
版本管理器,管理代码的。
1.1git工作流程
常规工作流程如下:
- 克隆 Git 资源作为工作目录。
- 在克隆的资源上添加或修改文件。
- 如果其他人修改了,你可以更新资源。
- 在提交前查看修改。
- 提交修改。
- 在修改完成后,如果发现错误,可以撤回提交并再次修改并提交。
工作流程示意图:
1.2.git操作流程图
2.git注册
注册地址:https://github.com/
我们点击右上角的sign up (注册的意思),然后会跳到注册页面。
step1:
第一步是填写注册的名字(name),
第二行是填注册的邮箱(email),
第三步是填写密码(password),
填写完后点击create account
step 2是选择计划(choose your plan),这里有两种选择,
一是创建公开仓库(repository),二是创建个人仓库(private),但创建个人需要费用,因此,我们选择第一种。
这里我们还可以创建(Organizations)。选好后,点击continue。
到此,我们就创建完了。
3.git客户端安装与使用
3.1.Git-2.20.1-64-bit.exe安装与简单使用】
安装完,几乎全是默认下一步!
3.2.Git命令简单使用
1.用户信息配置
配置个人的用户名称和电子邮件地址:
$ git config --global user.name "wfd360"
$ git config --global user.email 851298348@qq.com
如果用了 --global 选项,那么更改的配置文件就是位于你用户主目录下的那个,以后你所有的项目都会默认使用这里配置的用户信息。
如果要在某个特定的项目中使用其他名字或者电邮,只要去掉 --global 选项重新配置即可,新的设定保存在当前项目的 .git/config 文件里。
2.查看配置信息
要检查已有的配置信息,可以使用 git config --list 命令:
3.git创建仓库
执行命令:git init myWork,在当前目录下创建一个名为myWork的仓库.
初始化后,会在 myWork目录下会出现一个名为 .git 的目录,所有 Git 需要的数据和资源都存放在这个目录中。
如果当前目录下有几个文件想要纳入版本控制,需要先用 git add 命令告诉 Git 开始对这些文件进行跟踪,然后提交,
创建好的文件夹如图:
现在我们演示在,myWork中创建一个a1.txt文件,然后在提交到版本库里面,命令如下
git add a1.txt
git commit -m '提交a1.txt'
4.从远程仓库拉取代码
我们使用 git clone 从现有的远程 Git 仓库中拉取代码
语法: git clone 远程地址
案例:git clone https://github.com/bangbangw/testGit.git
git的一些常规简单命令就介绍到这里,如果需要了解更多,可以查看官方文档:git完整命令手册:https://git-scm.com/docs
弄了一堆命令,是不是感觉git咋个这么麻烦..........no...no....
更更重要的是,我们作为程序员,其实完全没必要掌握这么一大堆命令,毕竟git作为一个程序开发的辅助工具,只要我们能用,不妨碍工作,怎么简单就怎么来,
这就是我们在平时开发中经常使用的强大工具小乌龟客户端:TortoiseGit......
3.2.TortoiseGit-2.7.0.0-64bit.msi安装与使用
tortoiseGit下载地址:https://download.tortoisegit.org/tgit/
下载完成后,同普通常规的软件安装方式一样,只需傻瓜式的直接下一步就可以了.
1.检查是否安装成功,右键鼠标,如果出现如下图标,则安装成功
2.检查受版本控制的文件是否有颜色标志,以刚才的建立的myWork仓库为例
3.解决没有颜色图标
TortoiseGit显示图标不正常
Windows Explorer Shell支持的Overlay Icon最多15个,除去系统使用,只有11个。如果其他程序占用了,那么小乌龟就无法显示了。注册表定位到:
Win+R-->regedit-->注册表:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers。修改Tortoise项的名称(比如在名称前加0,会按照数字优先,将TortoiseGit相关的排在前面),让他们排到前面然后重启资源管理器就能正常显示了。
4.各图标颜色的含义
正常的文件夹或文件
被修改过的文件夹或文件
新添加的文件夹或文件
未受控的文件夹或文件
忽略不受控的文件夹或文件
删除的文件夹或文件
有冲突的文件夹或文件
5.简单使用
1.拉取代码
远程仓库地址:https://github.com/bangbangw/testGit.git
拉取下到本地的文件如图
2.我模拟在testGit下进行工作,完成一个基本流程
创建文件 a.txt ----->提交----->修改------>提交----->查看远程服务器文件是否存在
1.创建文件 a.txt
2.使用小乌龟提交
在当前工作目录下,鼠标右键,如下图
选择ok
这时候已纳入版本管理,然后在点击commit,提交到本地仓库
填写提交的备注信息等...,然后点击commit
点击push,将本地仓库更新到远程仓库
点击ok
输入远程仓库用户名
输入远程仓库密码
推送到远程仓库成功
查看远程仓库是否有文件
到此,一个从本地创建文件到推送的远程仓库的流程完成.
推送完成后本地文件图标如图
接下来演示,修改a.txt,然后在推送到远程仓库.
修改a.txt文件内容后,图标变化如图
然后在鼠标右键,按照如下选择
填写提交备注,然后点击commit,接下来的流程与刚才一样,根据提示对话框提示一步步往下走即可...
到此TortoiseGit的常规用法就介绍到这里.
4.idea git 整合使用
具体步骤详见:https://www.cnblogs.com/newAndHui/p/10594956.html
5.git分支、合并与使用
具体步骤详见:https://www.cnblogs.com/newAndHui/p/10846276.html
6.idea中git标签(tag)的创建与使用
具体步骤详见:https://www.cnblogs.com/newAndHui/p/10846954.html
完美!
git零基础快速入门实战,重点讲解,在实际生产中整合idea对版本、分支的管理等的更多相关文章
- 【课件】git零基础快速入门实战--重点讲解,在实际生产中整合idea对版本、分支的管理等
1.git简单描述 git是重要的版本管理工具,几乎每个码农都有自己的git账号管理自己的代码,同时很多公司也是用git管理公司的代码, 因此掌握git在实际生产中的常规使用非常重要. 2.git学习 ...
- git内容补充-Git零基础快速入门-苏玲
https://git-scm.com/book/zh/v2 git历史 集中式版本控制管理:cvs.svn 分布式版本控制管理:git 基本命令 git config --list --global ...
- 小D课堂 - 零基础入门SpringBoot2.X到实战_第1节零基础快速入门SpringBoot2.0_1、SpringBoot2.x课程介绍和高手系列知识点
1 ======================1.零基础快速入门SpringBoot2.0 5节课 =========================== 1.SpringBoot2.x课程全套介绍 ...
- [易学易懂系列|rustlang语言|零基础|快速入门|(28)|实战5:实现BTC价格转换工具]
[易学易懂系列|rustlang语言|零基础|快速入门|(28)|实战5:实现BTC价格转换工具] 项目实战 实战5:实现BTC价格转换工具 今天我们来开发一个简单的BTC实时价格转换工具. 我们首先 ...
- [易学易懂系列|rustlang语言|零基础|快速入门|(27)|实战4:从零实现BTC区块链]
[易学易懂系列|rustlang语言|零基础|快速入门|(27)|实战4:从零实现BTC区块链] 项目实战 实战4:从零实现BTC区块链 我们今天来开发我们的BTC区块链系统. 简单来说,从数据结构的 ...
- [易学易懂系列|rustlang语言|零基础|快速入门|(26)|实战3:Http服务器(多线程版本)]
[易学易懂系列|rustlang语言|零基础|快速入门|(26)|实战3:Http服务器(多线程版本)] 项目实战 实战3:Http服务器 我们今天来进一步开发我们的Http服务器,用多线程实现. 我 ...
- [易学易懂系列|rustlang语言|零基础|快速入门|(25)|实战2:命令行工具minigrep(2)]
[易学易懂系列|rustlang语言|零基础|快速入门|(25)|实战2:命令行工具minigrep(2)] 项目实战 实战2:命令行工具minigrep 我们继续开发我们的minigrep. 我们现 ...
- [易学易懂系列|rustlang语言|零基础|快速入门|(24)|实战2:命令行工具minigrep(1)]
[易学易懂系列|rustlang语言|零基础|快速入门|(24)|实战2:命令行工具minigrep(1)] 项目实战 实战2:命令行工具minigrep 有了昨天的基础,我们今天来开始另一个稍微有点 ...
- [易学易懂系列|rustlang语言|零基础|快速入门|(23)|实战1:猜数字游戏]
[易学易懂系列|rustlang语言|零基础|快速入门|(23)|实战1:猜数字游戏] 项目实战 实战1:猜数字游戏 我们今天来来开始简单的项目实战. 第一个简单项目是猜数字游戏. 简单来说,系统给了 ...
随机推荐
- CSS学习笔记-背景属性
一.背景尺寸属性: 1.含义: 背景尺寸属性是CSS3中新增的一个属性,专门用于设置背景图片大小 2.格式: 1.1具体像素: backgro ...
- [20191113]oracle共享连接模式端口2.txt
[20191113]oracle共享连接模式端口2.txt --//昨天的测试链接:http://blog.itpub.net/267265/viewspace-2663651/=>[20191 ...
- pymysql连接
import pymysql conn=pymysql.connect(host='localhost',user='root',password='123',db='sg',charset='utf ...
- MySQL 数据库查询数据,过滤重复数据保留一条数据---(MySQL中的row_number变相实现方法)
转自: http://www.maomao365.com/?p=10564 摘要: 下文讲述MySQL数据库查询重复数据时,只保留一条数据的方法 实现思路: 在MySQL数据库中没有row_numbe ...
- nvprof 使用记录; 以及使用 nvprof 查看tensorflow-gpu 核函数运行记录
最近需要使用 nvprof 此时cuda 程序运行的性能,下面对使用过程进行简要记录,进行备忘: 常用使用命令:nvprof --unified-memory-profiling off python ...
- 从公司实际沟通中-得知bug的描述与为什么要bug留痕
从公司实际沟通中-得知bug的描述与为什么要bug留痕 最近在做的一个实际项目.下图为我们的聊天记录,仔细看图,领悟: 从中预期可以学习到的: 1)实际公司--Bug描述的另一个方法: 2)实际公司- ...
- vue踩坑--细节决定成败
1.错误示例 . 2.错误的地方 3.修改后代码 4.错误分析
- Ubuntu 18.04 安装 python 的 redis 库
安装 如果只是安装了 python2.x 或者 python3.x,直接安装即可,命令如下: pip install redis 如果是同时安装了 python2.x 和 python3.x 的,则需 ...
- layUI学习第二日:非模块化方法使用layUI
layUI采用非模块化方式(即所有模块一次性加载),操作示例代码如下(如果问怎么创建项目和工具,参考layUI学习第一日的步骤): 运行的结果如下: 运行的显示不会太持久,过几秒就会消失,具体封装的代 ...
- jinja2模板用法
我不是代码的生产者,我只是知识的搬运工 jinja2模板用法